PAT 1152 Google Recruitment

2023-10-27

原题链接:1152 Google Recruitment (20分)

题意: 从任一给定的长度为 L 的数字中,找出最早出现的 K 位连续数字所组成的素数。
关键词: 字符串、判断质数

输入格式:
输入在第一行给出 2 个正整数,分别是 LK
接下来一行给出一个长度为 L 的正整数 N

输出格式:
在一行中输出 N 中最早出现的 K 位连续数字所组成的素数。
如果这样的素数不存在,则输出 404
注意:原始数字中的前导零也计算在位数之内。
例如在 200236 中找 4 位素数,0023 算是解;但第一位 2 不能被当成 0002 输出,因为在原始数字中不存在这个 2 的前导零。

数据范围:

1 ≤ L ≤ 1000,
1 ≤ K <10

输入样例1:

20 5
23654987725541023819

输出样例1:

49877

输入样例2:

10 3
2468024680

输出样例2:

404

代码:

#include <bits/stdc++.h>
using namespace std;

bool isprime(int a){	//判断是否是质数
    
	if (a == 0 || a == 1) return false;
	for (int i = 2; i * i <= a; i ++ )
		if (a % i == 0) return false;
	return true;
}

int main(){
    int l, k;
    string str;
    bool flag = false;
    
    cin >> l >> k >> str;
    
    for(int i = 0; i + k <= l; i ++ ){	//注意边界
        int num = stoi(str.substr(i, k));
        if(isprime(num)){
        	//有先导零的问题,因此不能直接输出num
            printf("%s", str.substr(i, k).c_str());	
            flag = true;
            break;
        }
    }
    
    if(!flag) puts("404");
    
    return 0;
}

使用到的库函数:

  • stoi(const string*):字符处理函数,把数字字符串转换成int输出。
  • s.substr(i, k):获得从第i位开始长度为k的字符串。
  string s("12345asdf");
  string a = s.substr(0,5);     //获得字符串s中从第0位开始的长度为5的字符串
  • s.c_str():返回一个指向正规C字符串的指针, 内容与本string串相同。实现将string变为char*。
  • strcpy(a, b):用于字符串复制,用法是传入2个字符数组指针来执行,如strcpy(a,b)是将b指向的字符串复制到a指向的空间中。
char* p = s[10];
string a = "welcome";
strcpy(p, a.c_str());
cout << p;
//结果为"welcome"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PAT 1152 Google Recruitment 的相关文章

  • hikari配置断开重连_Spring boot 数据库连接断线重连问题

    问题描述 我正在做的这个项目 数据库是跨区并且不由自己管理的 防火墙会每隔一段时间就自动断开数据库连接 于是需要对application properties的datasource进行配置 Ps 我使用是mybatis连接数据库 配置及具体
  • MOSFET、IGBT的结构与工作原理详解

    来自百度百科 先学习一下MOSFET 图1是典型平面N沟道增强型NMOSFET的剖面图 它用一块P型硅半导体材料作衬底 在其面上扩散了两个N型区 再在上面覆盖一层二氧化硅 SiO2 绝缘层 最后在N区上方用腐蚀的方法做成两个孔 用金属化的方
  • 剑指Offer - 面试题27:二叉树的镜像

    题目 请完成一个函数 输入一棵二叉树 该函数输出它的镜像 二叉树节点的定义如下 typedef int TElemType 树结点的数据类型 目前暂定为整型 struct BianryTreeNode TElemType m nValue
  • unity手指触摸事件

    Unity 触屏操作 当将Unity游戏运行到IOS或Android设备上时 桌面系统的鼠标左键可以自动变为手机屏幕上的触屏操作 但如多点触屏等操作却是无法利用鼠标操作进行的 Unity的Input类中不仅包含桌面系统的各种输入功能 也包含

随机推荐

  • 龙芯mips64el -适配electron及打包

    背景 内网机器 uos龙芯版 一开始把项目从外网考过去 运行 electron报错 后来发现 electron 没有mips架构的 只能自己改造了 直接干货 记得给打上哦 1 从http www loongnix org index php
  • NFS Provisioner

    一个自动配置卷的程序 它使用现有的和已配置的nfs服务器支持通过持久卷动态配置kubernetes持久卷 持久卷被配置为 namespace namespace namespace pvcName pvName 注意使用这个组件必须要提前配
  • 服务架构基本概念

    单体 所有业务都集中在一个项目中开发一个服务然后打一个包部署 分布式 分布式是指将不同的业务分布在不同的地方 集群指的是将几台服务器集中在一起 实现同一业务 分布式的每一个节点 都可以做集群 而集群并不一定就是分布式的 把单体系统拆分多个子
  • nginx配置指南

    nginx conf配置 找到Nginx的安装目录下的nginx conf文件 该文件负责Nginx的基础功能配置 配置文件概述 Nginx的主配置文件 conf nginx conf 按以下结构组织 配置块 功能描述 全局块 与Nginx
  • 微服务学习资料(持续更新)

    文章目录 微服务学习资料 持续更新 微服务介绍 微服务架构模式 从单体架构到微服务架构 绞杀者模式 微服务API设计 微服务安全 认证与鉴权 微服务数据架构 微服务事务管理 CAP理论 分布式事务 Saga模式 服务网格 服务版本管理 架构
  • Tensorflow导入报"Failed to load the native TensorFlow runtime."解决方案

    问题描述 在ubuntu服务器端测试import tensorflow 导入正常 但是使用pycharm远程访问连接使用pycharm时 出现tensorflow环境出现问题 为什么 这和之前在服务器安装过程中导入pycharm出错的原因一
  • 【自监督学习】 MAE阅读笔记

    1 MAE Masked Autoencoders Are Scalable Vision Learners bert ViT MAE的主要目的是进行迁移学习的预训练 1 Abstract 随即盖住一些图片中的块 patches 并重建被盖
  • 解析创客教育活动所需的空间实践场

    创客教育不同于创客活动 如果只是以活动或竞赛的形式在学校里分发 那只是一种创客活动 并没有真正融入教育 在发展过程中 会出现过度的偏执和做事 或者过度的偏执学习 如何找到平衡是学校教育者的重要一环 创客教育 培养学生创新所需要的知识 能力和
  • 聊一聊Linux下进程隐藏的常见手法及侦测手段

    0x00 前言 进程隐藏是恶意软件隐藏自身痕迹逃避系统管理人员发现的常用伎俩之一 当然 安全防护人员有时候也会使用到 比如隐藏蜜罐中的监控进程而不被入侵者觉察等 笔者也曾在多次安全应急响应经历中遇到过多各式各样的进程隐藏伎俩 了解进程隐藏的
  • 【问题解决】Centos7 yum命令异常报错Could not retrieve mirrorlist http://mirrorlist.centos.org

    问题出现 在把虚拟机的ip改为静态ip之后 yum install就会出现这样子的问题 root etcd yum install y wget 已加载插件 fastestmirror Determining fastest mirrors
  • 01rapidJson学习之rapidJson的初始化

    01rapidJson学习之rapidJson的初始化 1 rapidJson的初始化 由于我们经常通过初始化添加值到string字符串中 所以这里封装成一个简单函数 rapidJson有3种初始化方式 1 改造初始化 2 set方法初始化
  • unity安卓so包与其他第三方so包冲突问题 Unable to find main / No implementation found for

    最近公司项目需要 在安卓端使用了视频直播的第三方包和unity的第三方包 问题来了 引用了视频直播的包之后 unity的嵌入程序启动会报错 Process e unitry3d PID 30302 java lang Unsatisfied
  • Linux用户与群组管理

    用户账户与群组概念 Linux操作系统是多用户多任务的操作系统 系统依据账户来区分属于每个用户的文件 进程 任务 并给每个用户提供特定的工作环境 例如 用户的工作目录 shell版本以及图形化的环境配置等 Linux系统下的用户分为三种 1
  • Centos7 离线安装kafka

    Centos7 离线安装kafka 1 准备 1 提前下载kafka与jdk rpm包 2 开始 1 将rpm包导入到服务器 2 执行 rpm ivh kafka 1 1 1 20200608 x86 64 rpm 下载 https dow
  • 华为OD机试-喊7游戏

    题目描述 喊7 是一个传统的聚会游戏 N个人围成一圈 按顺时针从1 7编号 编号为1的人从1开始喊数 下一个人喊得数字是上一个人喊得数字 1 但是当将要喊出数字7的倍数或者含有7的话 不能喊出 而是要喊过 假定N个人都没有失误 当喊道数字k
  • IDEA 编译时 报 “常量字符串过长” 解决办法

    在编译项目时 出现错误为 常量字符串过长 java constant string too long 解决 File gt gt Settings gt gt Build Execution Deployment gt gt Compile
  • @font-face 加载字体引用字体之后不起作用

    如题 最近在学习css的时候遇到如下情况 使用 font face加载多种字体不起作用 反思 是我搞错了 字体加载可能就是要一条一条的写 文件结构目录 代码如下
  • Android 报错:Call requires API level 26/设置SDK最小的版本

    报错如下图所示 我尝试了升级Android Studio 到新版本 报错仍然存在 原因是某些控件仅仅支持一些较高SDK的版本 所以修改模块的gradle文件的SDK的最小版本 改完之后报错消失 备注 SDK Software Develop
  • in和=无法查出为NULL的值

    select from base persons x where x pname in null select from base persons x where x pname null 以上两句查询结果为空 虽然表里有相应的值 Id N
  • PAT 1152 Google Recruitment

    原题链接 1152 Google Recruitment 20分 题意 从任一给定的长度为 L 的数字中 找出最早出现的 K 位连续数字所组成的素数 关键词 字符串 判断质数 输入格式 输入在第一行给出 2 个正整数 分别是 L 和 K 接