Cod sursa(job #131869)

Utilizator bogdanhm999Casu-Pop Bogdan bogdanhm999 Data 4 februarie 2008 16:48:18
Problema 1-sir Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <stdio.h>

long n,s,i,j,a[32650],b[32650],smax,x;

int main(){
    freopen("1-sir.in","r",stdin);
    freopen("1-sir.out","w",stdout);
    
    scanf("%ld %ld",&n,&s);
    if (s<0)s*=-1;
    
    a[0]=1;
    smax=n*(n-1)/2;
    if (s>smax){printf("0\n");return 0;}
    for (i=2;i<=n;i++){
        for (j=0;j<=smax;j++){
            x=j-i+1;
            if (x<0)x*=-1;
            if (x<=smax)b[j]=a[x];
            x=j+i-1;
            if (x<=smax)b[j]+=a[x];
            b[j]%=194767;
        }
        for (j=1;j<=smax;j++){
            a[j]=b[j];
            //printf("%ld ",b[j]);
            b[j]=0;
        }
        //printf("\n");
    }
    printf("%ld\n",a[s]);
return 0;
}