Pagini recente » Cod sursa (job #1280878) | Cod sursa (job #1639952) | Cod sursa (job #2515080) | Cod sursa (job #442592) | Cod sursa (job #12354)
Cod sursa(job #12354)
#include <stdio.h>
#include <string.h>
#include <math.h>
#define input "1-sir.in"
#define output "1-sir.out"
#define rest 194767
#define origine 32647
long n,suma,s1[66000],s2[66000];
void read()
{
FILE *fin;
fin=fopen(input,"r");
fscanf(fin,"%ld %ld",&n,&suma);
fclose(fin);
}
void write()
{
FILE *fout;
fout=fopen(output,"w");
fprintf(fout,"%ld",s1[origine+suma]);
fclose(fout);
}
void solve()
{
long i,max,j;
s1[origine]=1;
for (i=2;i<=n;i++)
{
max=(int)((i*(i+1))/2);
for (j=origine-max;j<=origine+max;j++)
s2[j]=(s1[j-(i-1)]+s1[j+(i-1)])%rest;
memcpy(s1,s2,sizeof(s2));
}
}
int main()
{
read();
solve();
write();
return 0;
}