#include<stdio.h>
#include<math.h>
int prime[1000001];
//素数表
int Primes(int n)
{
int i, j;
for (i = 1; i <= n; i++)
{
//偶数
if (i % 2 == 0)
{
prime[i] = 0;
}
//奇数
else{
prime[i] = 1;
}
}
//奇数的倍数肯定不是素数
for (i = 3; i <= n; i += 2)
{
if (prime[i])
{
for (j = i + i; j <= n; j += i)
{
prime[j] = 0;
}
}
}
return 0;
}
int main(){
int N, M, count, i;
scanf("%d", &N);
{
while (N--){
count = 0;
scanf("%d", &M);
//求素数,得到一个数组
Primes(M);
//求孪生素数
for (i = 2; i <= M - 2; i++){
if (prime[i] && prime[i + 2]){
count++;
//printf("%d %d\n",i,i+2);
}
}
//两个素数相邻为1的也成为孪生素数。这样的只有一种情况2,3
if (M >= 3){
count++;
}
printf("%d\n", count);
}
}
return 0;
}