Pagini recente » Cod sursa (job #1381246) | Istoria paginii utilizator/mening12001 | Diferente pentru teorema-chineza-a-resturilor intre reviziile 48 si 47 | Cod sursa (job #2425503) | Cod sursa (job #30468)
Cod sursa(job #30468)
#include<stdio.h>
FILE *f;
#define In "1-sir.in"
#define Out "1-sir.out"
#define M (255*256/2)
int sol[2][M];
int N,S,s,n,p,q,ts;
int abs(int x)
{
if(x>0) return x;
else return -x;
}
int main()
{
f=fopen(In,"r");
fscanf(f,"%d%d",&N,&S);
sol[1][0]=1; S=abs(S);
for(n=2;n<=N;n++)
{
p=n%2; q=!p;
ts=n*(n-1)/2;
for(s=0;s<=ts;s++)
sol[p][s]=sol[q][abs(s-(n-1))]+sol[q][s+(n-1)];
}
freopen(Out,"w",f);
fprintf(f,"%d\n",sol[p][S]);
fclose(f);
return 0;
}