Pagini recente »
Borderou de evaluare (job #682783)
|
Istoria paginii utilizator/cozmalaura
|
Profil Sebibucur
|
Istoria paginii utilizator/lacatusua
|
Cod sursă (job #285811)
Cod sursă (job
#285811)
#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;
}
}
}