Advertisement
Nayeemzaman

Untitled

Aug 19th, 2019
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.76 KB | None | 0 0
  1. #include<iostream>
  2. #include<vector>
  3. #define TD 1000000
  4. using namespace std;
  5.  
  6. bool assigned[TD];
  7.  
  8. bool prime_num(int i)
  9. {
  10. if(i < 2) return false;
  11. if(i == 2) return true;
  12. if(i%2 == 0) return false;
  13. return assigned[i] == false;
  14. }
  15. void sieve(int p)
  16. {
  17. for(int i=3; i*i<=p; i+=2)
  18. {
  19. if(assigned[i] == false)
  20. {
  21. for(int j=i*i; j<=p; j+=(i+i))
  22. {
  23. assigned[j] = true;
  24. }
  25. }
  26. }
  27. }
  28. int main()
  29. {
  30. int k,num;
  31. cin >> k;
  32. sieve(TD);
  33.  
  34. vector<int>result;
  35. for(int i=0; i<TD; i++)
  36. {
  37. if(prime_num(i))
  38. result.push_back(i);
  39. }
  40. while(k-->0)
  41. {
  42. cin >> num;
  43. cout << result[num-1] << endl;
  44. }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement