#include<bits/stdc++.h>
using namespace std;
int n,ans,a[100001];
bool b[100001];
void check(int n){
memset(b,true,sizeof b);
b[1]=false;
for(int i=2;i<=n;i++){
if(b[i])a[++ans]= i;
for(int j=1;a[j]*i<=n;j++){
b[a[j]*i]=false;
if(i%a[j]==0)break;
}
}
}
int main () {
cin>>n;
if(n==1){
printf("1\n1");
return 0;
}else if(n==2){
printf("1\n1 1");
return 0;
}
check(n+1);
puts("2");
for(int i=2;i<n+2;i++){
if(b[i])printf("1 ");
else printf("2 ");
}
}
Sherlock and his girlfriend
最新推荐文章于 2024-11-05 21:58:11 发布