Pagini recente » Cod sursa (job #365946) | Cod sursa (job #1883596) | Borderou de evaluare (job #2698045) | Cod sursa (job #376152) | Cod sursa (job #11867)
Cod sursa(job #11867)
#include<stdio.h>
#define fin "1-sir.in"
#define fout "1-sir.out"
#define Mod 194767
#define Nmax 32896
int n,s,v2[Nmax],v1[Nmax];
FILE *in,*out;
inline int absf(int a) { if (a<0) a*=-1; return a; }
int main() {
int i,j,lim;
in=fopen(fin,"r"); out=fopen(fout,"w");
fscanf(in,"%i%i",&n,&s);
if (s<0) s*=-1;
v1[0]=1; lim=1;
for (i=2;i<=n;++i) {
lim+=i;
for (j=0;j<=lim;++j) {
v2[j]=0;
v2[j]=v1[absf(j-(i-1))]%Mod;
if (j+i-1<Nmax) v2[j]=(v2[j]+v1[j+(i-1)])%Mod;
}
for (j=0;j<=lim;++j) v1[j]=v2[j];
}
fprintf(out,"%i\n",v2[s]);
fclose(in); fclose(out);
return 0;
}