#define N 388 typedef unsigned long long int uint; void zero(uint * w){int i; for(i=0;i<=N;i++) w[i]=0;} void conv(uint * w, uint * a, int s, int e, int h){ int i,j,jj; zero(w); if(e>N/h) e=N/h; for(j=s*h,jj=s; jj++<=e; j+=h) for(i=0; i+j<=N; i++) w[i+j] +=a[i]; } int main(){ uint w[N+1], a[N+1]; int i; zero(a); for(i=0;i<=N;i++) a[i]=1; conv(w, a, 0, N, 2); conv(a, w, 0, N, 5); conv(w, a, 0, N, 10); conv(a, w, 0, N, 20); conv(w, a, 0, N, 50); conv(a, w, 0, N,100); conv(w, a, 0, N,200); printf("%llu\n",w[N]); //for(i=50>N?N:50;i>=0;i--) for( i=0; i<=N; i++ ) printf("%4d %20llu \n", i, w[i]); return 0; }
czwartek, 5 stycznia 2012
liczba rozwiązań
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz