- 108 名前:デフォルトの名無しさん mailto:sage [2009/07/26(日) 12:28:08 ]
- >>94
なんか題意を正しく把握できてるか不安だが、こんなんでどうよ? #include <stdio.h> #define N 1000 char list[N+1]; int num[5] = {5,7,11,13,17}; void f(int n, int pos) { int i; list[n] = 1; for(i=pos; i<5; i++) { int temp = n + num[i]; if(list[temp]) continue; if(temp > N) return; f(temp, i); }} int main(void) { int i; f(0,0); for(i=0; i<=N; i++) if(list[i]) printf("%d ", i); return 0; }
|

|