//改成这样AC了
#include
using namespace std;
int main()
{
int n,i,a=1;
while(cin>>n)
{ if(n<=0)break;
cout< if(n==1||n==2)
cout<<"no"<
{
for(i=2;i*i<=n;i++)////////////
if(n%i==0) break;
if(i*i>n)///////////////////////
{
cout<<"yes"<
else
{
cout<<"no"<
}
a++;
}
return 0;
}
或
#include
#include
using namespace std;
int main()
{
int n,i,a=1;
while(cin>>n)
{ if(n<=0)break;
cout< if(n==1||n==2)
cout<<"no"<
{
for(i=2;i<=sqrt((double)n);i++)//////////////
if(n%i==0) break;
if(i>sqrt((double)n))///////////////////
{
cout<<"yes"<
else
{
cout<<"no"<
}
a++;
}
return 0;
}
思路错误, 这是斐波那契数列
#include
int main()
{
__int64 ways[50],i;
ways[0]=1;
ways[1]=2;
for(i=2;i<50;i++)
{
ways[i]=ways[i-1]+ways[i-2];
}
while(scanf("%d",&i)==1)
{
if(ways[i-1]>100000000)
{
printf("%d",ways[i-1]/100000000);
printf("%08d\n",ways[i-1]%100000000);
}
else printf("%lld\n",ways[i-1]);
}
}