22222了啊!很久没在zoj做题了,WA了三次,
#include"stdio.h"
#include"string.h"
#include"math.h"
#define N 1000001
int isPrime[N];
void prime()
{
int i,j;
memset(isPrime,0,sizeof(isPrime));
isPrime[0]=isPrime[1]=1;
for(i=2;i<N;i++)
{
if(isPrime[i]==0)
{
for(j=i+i;j<N;j+=i)
isPrime[j]=1;
}
}
}
int main()
{
int i;
int n;
prime();
while(scanf("%d",&n)!=-1)
{
for(i=2;i<n;i++)
if(!isPrime[i]&&!isPrime[n/i]&&n%i==0)
{
printf("Yes\n");
break;
}
if(i>=n)printf("No\n");
}
return 0;
}