Codeforces_776B: Sherlock and his girlfriend(素数筛)

时间:2021-10-07 12:26:26

题目链接

题意:对2~n+1染色,一个数不能与其素因子同色。

故而只需两种颜色即可,素数染1,合数染2便可满足条件

#include<bits/stdc++.h>
using namespace std;
typedef long long LL;

//素数筛打表
;
],num_prime=;
];
void init()
{
    isNotPrime[]=isNotPrime[]=;
    ; i<=N; i++)
    {
        if(!isNotPrime[i]) prime[num_prime++]=i;
        ; j<num_prime&&i*prime[j]<=N; j++)
        {
            isNotPrime[i*prime[j]]=;
            if(!(i%prime[j])) break;
        }
    }
}

int main()
{
    int n;
    init();
    while(cin>>n)
    {
        ||n==) puts(");
        ");
        ;i<=n+;i++)
            printf(,i==n+? '\n':' ');
    }
}