Result: Accepted
Time: 51ms
Memory: 1716kB
#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]);
}
}