/*********
作者:assiss
日期:2004-11-18 17:22
编译环境:FreeBSD 5.3 Beta 7+gcc3.4.2
采用的算法:35楼
*********/
#include <stdio.h>
#define N 10000000
int main(int argc,char** argv)
{
char s[N+1];
int i,j,k,m=0,n=0;
int a,b,c,d,e,f;
for(i=0;i<=N;i++)s[i]=0;
for(i=6;i<=N;i+=6)
{
s[i-1]=1;
s[i+1]=1;
}
i=1;
a=30;
b=-5;
while(1)
{
n=a*i+b;
if(n>N)break;
s[n]=0;
j=1;
while(1)
{
m=(a+36*j)*i+2*a*j+36*j*(j-1)+b;
if(m>N)break;
s[m]=0;
j++;
}
i++;
}
i=1;
a=42;
b=7;
while(1)
{
n=a*i+b;
if(n>N)break;
s[n]=0;
j=1;
while(1)
{
m=(a+36*j)*i+2*a*j+36*j*(j-1)+b;
if(m>N)break;
s[m]=0;
j++;
}
i++;
}
i=1;
a=30;
c=42;
e=5;
while(1)
{
n=a*i+e;
if(n>N)break;
s[n]=0;
j=1;
while(1)
{
m=(a+36*j)*i+(c+a)*j+36*j*(j-1)+e;
if(m>N)break;
s[m]=0;
j++;
}
i++;
}
i=1;
a=30;
c=42;
e=5;
while(1)
{
n=c*i+a+e;
if(n>N)break;
s[n]=0;
j=1;
&nbs