洛谷上的一ti,求大家帮芒kan看。

img

img


感觉输入了一些数字都是对的啊,为什么还是只有20分afshvzhshwbbwjshsg

这个题有可能是输出的格式不对,两个地方

  1. printf("%ld\n\n",i); 应该多了个 \n -> printf("%ld\n",i)
  2. printf("%ld", count); 这里少了一个\n -> printf("%ld\n", count)
#include<iostream>
using namespace std;
int main()
{
    int L;
    cin>>L;
    if(L>=2)
    {
    int sum=2;
    cout<<2<<endl;
    int m=1;
    for(int i=3;sum<=L&&sum+i<=L;i+=2)    //每次判断i是否为质数 
    {
        int k;
        for(k=3;k<i;k+=2)
        {
            if(i%k==0)
                break;
            if(k*k>i)
                break;
        }
        if(k*k>i)            //k==i说明没有执行过break 
        {
            sum+=i;
            cout<<i<<endl;
            m++;
        }
    }
    cout<<m;
    }
    else
        cout<<0<<endl;
    return 0;
}

p == 0是错的,p是个函数,应该是p(i) == 0才对