Start: Jun, 28, 2019 08:42:00
2019杭州师范大学第一届程序设计竞赛新生赛
End: Jun, 28, 2019 11:42:00
Time elapsed:
Time remaining:

Problem_ID: F
Result: Accepted
Time: 51ms
Memory: 1716kB
In contest: 1276

#include <bits/stdc++.h>
#define lowbit(x) (x&(-x))
#define lson root<<1,l,mid
#define rson root<<1|1,mid+1,r
using namespace std;
const int maxn=1e3+10;
int notprime[maxn];
void init()
{
    notprime[0]=0;
    notprime[1]=true;
    for(int i=2;i<maxn;++i)if(!notprime[i])
    {
        if(i>maxn/i)continue;
        for(int j=i*i;j<maxn;j+=i)
            notprime[j]=true;
    }
    for(int i=1;i<maxn;++i)
    {
        notprime[i]=!notprime[i];
        notprime[i]+=notprime[i-1];
    }
}
int main()
{
    int t;
    init();
    scanf("%d",&t);
    while(t--)
    {
        int n;
        scanf("%d",&n);
        printf("%d\n",notprime[n]);
    }
}