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(spf[i]==i){
  29. for(int j = i*i ; j<=1000000 ; j+=i){
  30. if(spf[j]==j){
  31. spf[j] = i;
  32. }
  33. }
  34. }
  35. }
  36. }
  37. void solve() {
  38. SPF();
  39. for(int i = 1 ; i<=100 ; i++){
  40. cout<<spf[i]<<" ";
  41. }
  42. cout<<endl;
  43. }
  44.  
  45. signed main(){
  46. ios::sync_with_stdio(false); cin.tie(NULL);
  47. //int t;
  48. //cin >> t;
  49. //while(t--){
  50. solve();
  51. //}
  52. return 0;
  53. }
Success #stdin #stdout 0.01s 11780KB
stdin
Standard input is empty
stdout
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1