杭电 1286 找新朋友

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

int set[40000];

int main()

{

    set[1]=set[0]=0;

    int cn,n;

    while(scanf("%d",&cn)!=EOF)

    {

        while(cn--)

        {

             int sum=0;

             memset(set,0,sizeof(set));

             scanf("%d",&n);

             for(int i=2;i<=n/2;i++)

             {

                 for(int j=1;i*j<n;j++)

                 {

                     if(n%i)

                        break;

                     else

                     {

                        set[i*j]=1;

                     }

                 }

             }

             for(int i=1;i<n;i++)

             {

                 if(set[i]==0)

                 {

                    sum++;

                 }

             }

             printf("%d\n",sum);

        }

    }

   // system("pause");

    return 0;

}

你可能感兴趣的:(杭电)