zoukankan      html  css  js  c++  java
  • PAT(Advanced Level)1152. Google Recruitment

    题意

    在一个字符串中,找到第一个长度为k的子串,而且这个子串对应的数字要是素数

    思路

    • 遍历这个字符串,每次用substr取长度为k的子串即可,利用stoi函数可以方便地将字符串→数,然后检查是否为素数即可

    代码

    #include<iostream>
    #include<vector>
    #include<algorithm>
    #include<math.h>
    #include<cmath>
    using namespace std;
    bool is_prime(int x) {
        if(x < 2) {
            return false;
        }
        if(x == 2) {
            return true;
        }
        for(int i = 2; i < sqrt(x) + 1; i++) {
            if(x % i == 0) {
                return false;
            }
        }
        return true;
    }
    int main() {
        string s;
        int l, k;
        cin >> l >> k;
        cin >> s;
        for(int i = 0; i < s.size() - k + 1; i++) {
            int value = stoi(s.substr(i, k));
            if(is_prime(value)) {
                cout << s.substr(i, k);
                return 0;
            }
        }
        cout << 404;
    }
    
    如有转载,请注明出处QAQ
  • 相关阅读:
    notepad++的使用
    windows下的ubuntu
    VMware Tools安装
    Terminal命令
    Linux文件操作
    vim学习
    Windows桌面美化
    求解移动字符串问题
    求解回文序列问题
    用Git命令把本地项目,提交到远程仓库
  • 原文地址:https://www.cnblogs.com/MartinLwx/p/14461539.html
Copyright © 2011-2022 走看看