Facebook
From Tuan Hoang, 1 Month ago, written in C++.
Embed
Download Paste or View Raw
Hits: 141
  1. //bsetbstebtbsetbsetbset
  2. #include<bits/stdc++.h>
  3.  
  4. using namespace std;
  5.  
  6. int n,a;
  7. int l = 1000005;
  8. int prime[1000005], z[1000005];
  9.  
  10. void dan() {
  11.     for (int i = 1;i <= l;i++)
  12.         {prime[i] = 1;}
  13.  
  14.     prime[1] = 0;
  15.     for (int i = 2;i <= l;i++) {
  16.         if (prime[i] == 1) {
  17.             for (int j = i+i;j <= l;j += i) {prime[j] = 0;}
  18.         }
  19.     }
  20.     for (int i = 2;i <= l;i++) {
  21.         if (prime[i] == 1) {z[i] = i;} else {z[i] = z[i-1];}
  22.     }
  23. }
  24.  
  25. int main() {
  26.   ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
  27.     freopen("CLOPRIME.inp","r",stdin);
  28.     freopen("CLOPRIME.out","w",stdout);
  29.  
  30.     cin>>n;
  31.     dan();
  32.     for (int i = 1;i <= n;i++) {
  33.         cin>>a;
  34.         cout<<z[a]<<endl;
  35.     }
  36. }
  37.