Cod sursă (job #285811)

Utilizator avatar zomboy55 ZzZzZzZz zomboy55 IP ascuns
Problemă 2sah (clasele 11-12) Compilator cpp | 1,45 kb
Rundă Arhiva de probleme Status evaluat
Dată 27 feb. 2017 09:37:44 Scor 0
#include <iostream>
#include <fstream>
#include <windows.h>
using namespace std;
ifstream f ("2sah.in");
ofstream g ("2sah.out");
long int a[9000][9000];
int main()
{
    int p,n,k,i,j;
    int s=0;
    f>>p>>n>>k;
    if(p==1)
    {
        for(i=1;i<=k;i++)
        {
            for(j=1;j<=(2*n)+1;j++)
            {
                a[i][j]=0;
            }
        }
        for(i=1;i<=k;i++)
        {
            a[i][((2*n+1)/2)+2-i]=a[i][((2*n+1)/2)+i]=1;
            for(j=((2*n+1)/2)+2-i+1;j<((2*n+1)/2)+i;j++)
            {
                a[i][j]=(a[i-1][j-1]+a[i-1][j]+a[i-1][j+1])%100003;
            }
        }
        for(j=((2*n+1)/2)+2-i+1;j<((2*n+1)/2)+i;j++)
        {
            s+=a[k][j];
        }
    if(s<=100003)
    {
        g<<s;
    }
    else
    {
        g<<s%100003;
    }
    }
    if(p==2)
    {
        for(i=1;i<=n+1;i++)
        {
            for(j=1;j<=(2*n)+1;j++)
            {
                a[i][j]=0;
            }
        }
        for(i=1;i<=n+1;i++)
        {
            a[i][((2*n+1)/2)+2-i]=a[i][((2*n+1)/2)+i]=1;
            for(j=((2*n+1)/2)+2-i+1;j<((2*n+1)/2)+i;j++)
            {
                a[i][j]=(a[i-1][j-1]+a[i-1][j]+a[i-1][j+1])%100003;
            }
        }
        for(i=1;i<=n+1&&k<=(2*n)+1;i++,k+=2)
        {
            s+=a[i][k];
        }
    if(s<=100003)
    {
    g<<s;
    }
    else
    {
        g<<s%100003;
    }
    }
}