柴小超 2021-05-16 20:41 采纳率: 57.1%
浏览 51
已采纳

PAT乙级1059C语言竞赛(20分)运行超时,求大佬解答

请问一下各位大佬,我做PAT乙级“1059C语言竞赛(20分)”那道题的时候,代码如下,实在搞不懂为什么测试点1和2会运行超时,请大佬指点,小菜鸟感激不尽🤕

#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <math.h>
using namespace std;

bool isPrime(int c) {
    for (int i = 2; i <= sqrt(c); i++) {
        if (c % i == 0) return false;
    }
    return true;
}

int main() {
    int N; cin >> N;
    vector<string> vec(N), checked;
    for (int i = 0; i < N; i++) cin >> vec[i];
    int m; cin >> m;
    string c;
    int rank;
    for (int i = 0; i < m; i++) {
        cin >> c;
        if (find(checked.begin(), checked.end(), c) != checked.end()) { cout << c << ": Checked" << endl; continue; }
        rank = find(vec.begin(), vec.end(), c) - vec.begin();
        if (rank == N) cout << c << ": Are you kidding?" << endl;
        else if (rank == 0) { cout << c << ": Mystery Award" << endl; checked.push_back(c); }
        else if (isPrime(rank+1)) { cout << c << ": Minion" << endl; checked.push_back(c); }
        else { cout << c << ": Chocolate" << endl; checked.push_back(c); }
    }
    return 0;
}
  • 写回答

4条回答 默认 最新

  • CSDN专家-三岁丫 2021-05-16 20:57
    关注

    能提供一下题目吗?获取题目链接也行。还有测试点1和测试点2超时的话,有没有输入的样例呢?

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

报告相同问题?

悬赏问题

  • ¥15 用三极管设计一个单管共射放大电路
  • ¥20 fluent无法启动
  • ¥15 孟德尔随机化r语言运行问题
  • ¥15 pyinstaller编译的时候出现No module named 'imp'
  • ¥15 nirs_kit中打码怎么看(打码文件是csv格式)
  • ¥15 怎么把多于硬盘空间放到根目录下
  • ¥15 Matlab问题解答有两个问题
  • ¥15 LCD12864中文显示
  • ¥15 在使用CH341SER.EXE时不小心把所有驱动文件删除了怎么解决
  • ¥15 gsoap生成onvif框架