歼灭弱题4
筛选法求素数,啥都没优化,STL过不了,换成C就勉强AC了,嘿嘿
ZOJ1951
#include <stdio.h>
int main()
{
char cc[1000001] = {0};
int x;
for(int i=3;i<1000001;i+=2)
{
x=2*i;
while(x<=1000000)
{
cc[x]=1;
x+=i;
}
}
int n,i;
while(scanf("%d",&n))
{
if(n==0) break;
for(i=3;i<1000001/2;i+=2)
{
if(cc[i]==0&&cc[n-i]==0)
{
printf("%d = %d + %d\n",n,i,n-i);
break;
}
}
}
return 0;
}
ZOJ1951
#include <stdio.h>
int main()
{
char cc[1000001] = {0};
int x;
for(int i=3;i<1000001;i+=2)
{
x=2*i;
while(x<=1000000)
{
cc[x]=1;
x+=i;
}
}
int n,i;
while(scanf("%d",&n))
{
if(n==0) break;
for(i=3;i<1000001/2;i+=2)
{
if(cc[i]==0&&cc[n-i]==0)
{
printf("%d = %d + %d\n",n,i,n-i);
break;
}
}
}
return 0;
}
浙公网安备 33010602011771号