fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define endl '\n'
  4. #define int long long
  5. const int MOD = pow(10,9)+7;
  6. const int MOD2 = 998244353;
  7. const int INF = LLONG_MAX/2;
  8.  
  9. int primes[1000000];
  10.  
  11. void seive(){
  12. fill(primes, primes + 1000000, 1);
  13. primes[0] = primes[1] = 0;
  14. for(int i = 2 ; i*i < 1000000 ; i++){
  15. if(primes[i]){
  16. for(int j = i*i ; j < 1000000 ; j += i){
  17. primes[j] = 0;
  18. }
  19. }
  20. }
  21. }
  22. int spf[1000000];
  23. void SPF(){
  24. for(int i = 0 ; i<1000000 ; i++){
  25. spf[i] = i;
  26. }
  27. for(int i = 1 ; i<=sqrt(1000000) ; i++){
  28. if(primes[i]){
  29. for(int j = i*i ; j<=1000000 ; j+=i){
  30. spf[j] = i;
  31. }
  32. }
  33. }
  34. }
  35. void solve() {
  36. SPF();
  37. for(int i = 1 ; i<=100 ; i++){
  38. cout<<spf[i]<<" ";
  39. }
  40. cout<<endl;
  41. }
  42.  
  43. signed main(){
  44. ios::sync_with_stdio(false); cin.tie(NULL);
  45. //int t;
  46. //cin >> t;
  47. //while(t--){
  48. solve();
  49. //}
  50. return 0;
  51. }
Success #stdin #stdout 0.01s 11464KB
stdin
Standard input is empty
stdout
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100