fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. typedef long long int ii;
  4. bool arr2[1000001];
  5. int arr3[100001];
  6. int main()
  7. {
  8. ii a,b,c,d,e,f,g,h,i,j;
  9. cin>>a;
  10. memset(arr2,false,sizeof(arr2));
  11. memset(arr3,0,sizeof(arr3));
  12. arr2[0]=arr2[1] = true;
  13. for(b=2;b<sqrt(100001);b++)
  14. {
  15. for(c=2*b;c<=100001;c=c+b)
  16. {
  17. arr2[c] = true;
  18. }
  19. }
  20. c=0;
  21. for(b=2;b<=(100001);b++)
  22. {
  23. if(arr2[b]==false)
  24. arr3[c++] = b;
  25. }
  26.  
  27. for(b=0;b<a;b++)
  28. {
  29. cin>>c>>d;
  30.  
  31. ii arr[d-c+1];
  32.  
  33. memset(arr,0,sizeof(arr));
  34. f = sqrt(d);
  35. e=0;
  36. while(1)
  37. {
  38. if(arr3[e]>f)
  39. break;
  40. else
  41. {
  42. g = c/arr3[e];//120/2
  43. if(g==0)
  44. {
  45. g = arr3[e]+g;
  46. g = g+arr3[e];
  47. }
  48. else{
  49. g = arr3[e]*g;}
  50.  
  51. if(g<c)
  52. g = g + arr3[e];else{}
  53. for(h=g;h<=d;h=h+arr3[e])
  54. {
  55. arr[h-c] = 1;//cout<<h-c<<" "<<h<<" "<<e<<"\n";
  56. }
  57. }
  58. e++;
  59. }
  60.  
  61. for(h=0;h<d-c+1;h++)
  62. {
  63. if(h+c==1){}
  64. else{
  65. if(arr[h]==0)
  66. cout<<h+c<<"\n";}
  67. }cout<<"\n";
  68. }
  69.  
  70. }
  71.  
Runtime error #stdin #stdout 0s 17424KB
stdin
Standard input is empty
stdout
Standard output is empty