1094 谷歌的招聘 (20分)

该博客主要介绍了如何使用C++编程解决字符串处理问题,通过提取子串并判断是否为素数。代码中定义了一个isPrime函数用于检查整数是否为素数,然后在主函数中读取字符串,逐个截取子串并进行素数验证。如果找到素数子串则输出,否则输出404。博客涉及字符串操作、素数判断及循环控制等概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 题目

在这里插入图片描述
在这里插入图片描述

2 思路

本题考查字符串处理和素数判断,素数记得对0和1进行处理。

3 代码

#include <iostream>
#include <string>
using namespace std;

int isPrime(int num){
    // 0,1和偶数情况
    if(num == 1 || num % 2 == 0){
        return false;
    }
    if(num == 2){
        return true;
    }
    
    for(int i = 3;i * i <= num;i += 2){
        if(num % i == 0){
            return false;
        }
    }
    return true;
}
int main(){
    int l,k;
    cin>> l >> k;
    cin.get();
    string num;
    getline(cin,num);
    int flag = true;
    for(int i = 0; i <= l - k;i++){
        string subStr = num.substr(i,k);
        int subNum = stoi(subStr);
        if(isPrime(subNum)){
            cout<< subStr <<endl;
            flag = false;
            break;
        }
    }
    if(flag){
         cout<< 404 <<endl;
    }
    system("pause");
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值