Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.36 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <stdio.h>
  4. #include <algorithm>
  5. #include <string>
  6. #include <vector>
  7. #include <queue>
  8. #include <stack>
  9. #include <map>
  10. #include <set>
  11.  
  12. using namespace std;
  13.  
  14. #define f first
  15. #define s second
  16. #define pb push_back
  17. #define mp make_pair
  18. #define ll long long
  19. #define pii pair < int, int >
  20. #define pll pair < long long, long long>
  21. #define ull unsigned long long
  22. #define vi vector <int>
  23. #define sz(a) (int)a.size()
  24. #define forit(it, s) for(__typeof(s.begin()) it = s.begin(); it != s.end(); it++)
  25. #define all(a) a.begin(), a.end()
  26. #define sqr(x) ((x) * (x))
  27. #define fname "lca"
  28.  
  29. const int inf = (int)1e9;
  30. const ll INF = (ll)1e18;
  31. const double eps = 1e-9;
  32. const double pi = acos(-1.0);
  33.  
  34. int n;
  35. bool ok[100100], prime[100100];
  36.  
  37. void calc(){
  38. for(int i = 2; i <= 100100; ++i){
  39. ok[i] = 1;
  40. prime[i] = 0;
  41. }
  42. for(int i = 2; i <= 100100; ++i){
  43. if(ok[i]){
  44. prime[i] = 1;
  45. for(ll j = (ll)i * (ll)i; j <= 100100; j += i){
  46. ok[j] = 0;
  47. }
  48. }
  49. }
  50. }
  51.  
  52. int main(){
  53. // freopen("input.txt", "r", stdin);
  54. // freopen(fname".in", "r", stdin);
  55. // freopen(fname".out", "w", stdout);
  56. scanf("%d", &n);
  57. calc();
  58. if(n < 3)
  59. printf("1\n");
  60. else
  61. printf("2\n");
  62. for(int i = 2; i <= n + 1; ++i){
  63. if(prime[i])
  64. printf("1");
  65. else
  66. printf("2");
  67. if(i != n + 1)
  68. printf(" ");
  69. }
  70. return 0;
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement