Cod sursa(job #8284)

Utilizator vlad_DVlad Dumitriu vlad_D Data 24 ianuarie 2007 03:00:55
Problema 1-sir Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>
int N, S;
int lb, ub;
int ex = 0;
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] = 1;
for (i=1; i<N; i++) {
    lb-=i; ub+=i;
    for (j=0; j<=ub; j++)
        {
        sol[j]= (sol[j]+ aux[j+i] + aux[abs(j-i)])%194767;
//      sol[j + ex]= (sol[j+ex]+ aux[j-i+ ex])%194767;
        }

    for (j=0; j<=ub; j++) aux[j] = sol[j], sol[j] = 0;
    }
if (S >= lb && S <= ub) {
   if (S < 0) S*=-1;
   printf("%d\n", aux[S]);
   }
else printf("0\n");
return 0;
}