hdu 1262 ,,一直wa。。。谁可以告诉我错哪里咯。。

2024-12-20 13:36:16
推荐回答(2个)
回答1:

#include
#include
#include
using namespace std;
int s[100000];
void ini()
{
int i,j;
s[0]=s[1]=1;
for(i=2;i<100000;i++) // 去掉等号
for(j=2;j*i<100000;j++) // 去掉等号
s[i*j]=1;
}
int main()
{
int n,i,m,j,k;
memset(s,0,sizeof(s));
ini();
while(scanf("%d",&n)!=EOF)
{
for(i=n/2;i>=2;i--)
if(!s[i]&&!s[n-i]){
cout< break;

}
}
return 0;
}

回答2:

#include
#include
#include
using namespace std;
int s[100000];
void ini()
{
int i,j;
s[0]=s[1]=1;
for(i=2;i<=100000;i++)
for(j=2;j*i<=100000;j++)
s[i*j]=1;
}
int main()
{
int n,i,m,j,k;
memset(s,0,sizeof(s));
ini();
while(scanf("%d",&n)!=EOF)
{
for(i=m;i>=2;i--) //m没有值,怎么赋值给i
if(!s[i]&&!s[n-i]){
cout< break;

}
}
return 0;
}