Pagini recente » Cod sursa (job #778907) | Cod sursa (job #11863)
Cod sursa(job #11863)
#include<stdio.h>
#define fin "1-sir.in"
#define fout "1-sir.out"
#define Mod 194767
#define Nmax 32896
int n,s,sol,x[1000],mat[100][100];
FILE *in,*out;
void go(int p,int S,int last) {
int i;
if (p==n+1) {
if (S==s) {
++sol;
//for (i=1;i<=n;++i) printf("%i ",x[i]);
//printf("\n");
}
}
else {
x[p]=last-1; go(p+1,S+last-1,last-1);
x[p]=last+1; go(p+1,S+last+1,last+1);
}
}
int main() {
int i,j;
in=fopen(fin,"r"); out=fopen(fout,"w");
fscanf(in,"%i%i",&n,&s);
for (i=1;i<=10;++i)
for (j=0;j<=i*(i+1)/2;++j) {
n=i; s=j;
sol=0;
go(2,0,0);
mat[i][j]=sol;
}
for (i=1;i<=n;++i) {
for (j=0;j<=20;++j) printf("%i ",mat[i][j]);
printf("\n");
}
printf("%i\n",sol);
fclose(in); fclose(out);
return 0;
}