Pagini recente » Cod sursa (job #1888108) | Cod sursa (job #2037191) | Cod sursa (job #3186052) | Cod sursa (job #291120) | Cod sursa (job #30525)
Cod sursa(job #30525)
#include<stdio.h>
int n;
long s,nr;
void sir(int n,long a,long sm)
{if(n==0)
{if(sm==s) {nr++;nr=nr%194767;}
return;}
long sum=n*(n+1)/2+n*a;
if(sum+sm<s||(s>0&&sum+sm<0)) return;
sum=n*(n-1)/2-n*a;
if(sum+sm>s||(s<0&&sum+sm>0)) return;
sm=sm+a;
sir(n-1,a+1,sm+1);
sir(n-1,a-1,sm-1);}
int main()
{freopen("1-sir.in" ,"r", stdin);
scanf("%d %ld",&n,&s);
sir(n-1,0,0);
freopen("1-sir.out" ,"w", stdout);
printf("%ld",nr);
fclose(stdout);
return 0;}