fork(1) download
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3.  
  4.  
  5.  
  6.  
  7.  
  8. int main() {
  9. int N = 0, i = 0, k = 0, count = 0, stack = 0;
  10. do {
  11. scanf("%d", &N);
  12. if (N == 0) return 0;
  13. else {
  14. int* arr = (int*)malloc(sizeof(int) * (2 * N + 2));
  15. for (i = 0; i < 2 * N; i++) {
  16. arr[i] = 1;
  17. }
  18. arr[0] = 0;
  19. for (i = 2; i * i <= 2 * N; i++) {
  20. if (arr[i-1] == 1) {
  21. for (k = i * 2; k <= 2*N; k += i)
  22. arr[k-1] = 0;
  23. }
  24. }
  25. for (i = N; i < 2 * N; i++) {
  26. if (arr[i] == 1)
  27. count++;
  28. }
  29. free(arr);
  30. printf("%d", count);
  31. count = 0;
  32. }
  33.  
  34. } while (N != 0);
  35. }
Success #stdin #stdout 0s 9424KB
stdin
1
10
13
100
1000
10000
100000
0
stdout
1432113510338392