Cod sursa(job #8970)

Utilizator VmanDuta Vlad Vman Data 25 ianuarie 2007 23:37:52
Problema 1-sir Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define mod 194767

int n,i,j,k,x;
long nr[2][33916],s,max;

int main()
{
freopen("1-sir.in","r",stdin);
scanf("%d %ld",&n,&s);
max=n*(n-1)/2;
s=abs(s);
freopen("1-sir.out","w",stdout);
if (s>max)
   {
   printf("%d",0);
   return 0;
   }
   else
   {
   k=0;
   nr[0][0]=1;
   for (i=2;i<=n;++i)
       {
       k=1-k;
       memset(nr[k],0,sizeof(nr[k]));
       for (j=0;j<=max;++j)
	   {
	   nr[k][j]=nr[1-k][abs(j-i+1)]+nr[1-k][abs(j+i-1)];
	   if (nr[k][j]>mod) nr[k][j]-=mod;
	   }
       }
    printf("%ld",nr[k][s]);
    }
return 0;
}