Alexanderise 2019-01-06 15:07 采纳率: 100%
浏览 529
已采纳

PAT考试1007. 素数对猜想 (20) VS上正常运行,但不能AC

图片说明

VS上可以运行并且得出正确结果的,但是不能AC,想请教各位大神,看看我代码哪里出了问题,非常非常非常感谢!

附上题目

让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。

现给定任意正整数N (< 10^5),请计算不超过N的满足猜想的素数对的个数。

输入格式:每个测试输入包含1个测试用例,给出正整数N。

输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。

输入样例:
20
输出样例:
4

#include<iostream>
using namespace std;
int main()
{
    cout << "please enter a number" << endl;
        int N;
    cin >> N;
    int i = 1;
    int count = 0;
    int j, n, m, d;
    int a[100000];
    a[0] = 2;
    if (N >= 100000)
    {
        return -1;
    }
    else
    {
        for (n = 3; n <= N; n++)
        {
            bool ok=1;
            for (m = 2; m < n; m++)

                {
                    if (n%m == 0)
                    { 
                        ok = !ok;
                        break;
                    }
                }
            if (ok)
            {
                a[i] = n;
                cout << a[i] << endl;
                i++;
            }
        }
        for (j = 0; j < i - 1; j++)
        {
            d = a[j + 1] - a[j];
            if (d == 2)
                count++;
        }
        cout << count << endl;
        return 0;
    }
}

  • 写回答

2条回答 默认 最新

  • _ZGq 2019-01-07 12:47
    关注

    不要输出提示输入信息!(第四行)

    你看看,如果是系统辨认的话,比如说正常输出是xxx,系统会认为你输出了这个:

    please enter a number

    xxx

    这显然和xxx本身不一样。系统不会因为你的友好而加分,反而会扣掉你所有的分。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧