Pagini recente » Cod sursa (job #2648303) | Cod sursa (job #1374028) | Cod sursa (job #2139851) | Cod sursa (job #2607883) | Cod sursa (job #401735)
Cod sursa(job #401735)
#include<stdio.h>
#define MOD 194764
int n,s,smax,dif;
int max,sum[90001];
int cmax;
int main ()
{
int i,j;
freopen("1-sir.in","r",stdin);
freopen("1-sir.out","w",stdout);
scanf("%d%d",&n,&s);
if(s<0)
s*=-1;
smax=n*(n-1)/2;
if(s>smax)
{
printf("0\n");
return 0;
}
if(s==smax)
{
printf("1\n");
return 1;
}
dif=smax-s;
if(dif%2)
{
printf("0\n");
return 0;
}
dif/=2;
sum[0]=1;
max=0;
for(i=1;i<=n-1;i++)
{
cmax=max;
for(j=0;j<=max;j++)
{
if(j+i>dif)
break;
if(!sum[j])
continue;
sum[j+i]+=sum[j];
if(i+j>cmax)
cmax=i+j;
if(sum[j+i]>MOD)
sum[j+i]-=MOD;
}
max=cmax;
}
printf("%d\n",sum[dif]);
return 0;
}