fork(1) download
  1. int main()
  2. {
  3. int M = 1000;
  4. int numbers[] = {17, 19, 23, 29, 31, 37};
  5. int N = sizeof(numbers) / sizeof(numbers[0]);
  6. int values[N+1], count = 0, i, v;
  7. for (i = N; i >= 0; i--) values[i] = 0;
  8.  
  9. while (1) {
  10. if ((M - values[0]) % numbers[0] == 0)
  11. count++;
  12. for (i = 1; i < N; i++) {
  13. v = values[i] + numbers[i];
  14. if (v > M) continue;
  15. break;
  16. }
  17. if (i == N) break;
  18. while (i >= 0) values[i--] = v;
  19. }
  20.  
  21. printf("count = %d\n", count);
  22.  
  23. return 0;
  24. }
  25.  
Success #stdin #stdout 0s 9432KB
stdin
Standard input is empty
stdout
count = 48939