Pagini recente » Cod sursa (job #2604263) | Cod sursa (job #1068216) | Cod sursa (job #1328212) | Cod sursa (job #1338498) | Cod sursa (job #8283)
Cod sursa(job #8283)
#include <stdio.h>
int N, S;
int lb, ub;
int ex = 256*128;
int sol[256*256], aux[256*256];
int i, j;
int abs(int x) {
if (x < 0) return -x;
return x;
}
int main() {
freopen("1-sir.in", "r", stdin);
freopen("1-sir.out", "w", stdout);
scanf("%d %d", &N, &S);
lb = ub = 0;
aux[0+ex] = 1;
for (i=1; i<N; i++) {
lb-=i; ub+=i;
for (j=0; j<=ub; j++)
{
sol[j + ex]= (sol[j+ex]+ aux[j+i+ ex] + aux[abs(j-i+ex)])%194767;
// sol[j + ex]= (sol[j+ex]+ aux[j-i+ ex])%194767;
}
for (j=0; j<=ub; j++) aux[j+ex] = sol[j+ex], sol[j+ex] = 0;
}
if (S >= lb && S <= ub) {
printf("%d\n", aux[S+ex]);
}
else printf("0\n");
return 0;
}