2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘。内容超级简单,就是一个以 .com 结尾的网址,而前面的网址是一个 10 位素数,这个素数是自然常数 e 中最早出现的 10 位连续数字。能找出这个素数的人,就可以通过访问谷歌的这个网站进入招聘流程的下一步。


自然常数 e 是一个著名的超越数,前面若干位写出来是这样的:e = 2.718281828459045235360287471352662497757247093699959574966967627724076630353547594571382178525166427427466391932003059921… 其中粗体标出的 10 位数就是答案。

本题要求你编程解决一个更通用的问题:从任一给定的长度为 L 的数字中,找出最早出现的 K 位连续数字所组成的素数。

输入格式:

输入在第一行给出 2 个正整数,分别是 L(不超过 1000 的正整数,为数字长度)和 K(小于 10 的正整数)。接下来一行给出一个长度为 L 的正整数 N。

输出格式:

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

输入样例 1:

20 5
23654987725541023819

输出样例 1:

49877

输入样例 2:

10 3
2468024680

输出样例 2:

404

思路:注意前导零也被包含进去!!!这个题毫无疑问我们要自定义一个函数用于判断是否是素数,输入的数字以字符串型输入,方便判断,输入之后用一个for循环,结束条件是i<=l-k,也就是我们从i=0开始,每次截取一段长为k的子串,再用sscanf将该串转换成数字,最后判断这个数字是否是素数,若是则输出它并且直接结束,若不是则继续截取下一段子串,最后循环正常退出,说明没有素数,则输出404。

#include <iostream>
#include <cmath>
#include <string>
#include <cstdlib>
using namespace std;bool judge(int n){  //判断是否是素数if(n==1||n==0) return false;for(int i=2;i<=sqrt(1.0*n);i++)if(n%i==0) return false;return true;
}int main()
{string number;int l,k,n;cin >>l>>k;cin >>number;for(int i=0;i<=l-k;i++){string s=number.substr(i,k); //截取sscanf(s.c_str(),"%d",&n);    //转数字if(judge(n)){  //判断cout <<s;return 0;}}cout <<404;return 0;
}

PAT乙级 | 1094 谷歌的招聘 (20分)相关推荐

  1. PAT 乙级 1094 谷歌的招聘 (20分)

    我的个人网站 Cheese的个人主页http://www.cheese.ren/ 博客来源 PAT 乙级 1094 谷歌的招聘-Cheese的个人博客PAT 乙级 1094 谷歌的招聘 C++http ...

  2. PAT 1094 谷歌的招聘 (20 分) c语言

    思路是用一个字符串储存输入的正整数,写一个函数求连续几位的值(结合指针),再用一个函数判断是否为素数,求得第一个素数,细节写在注释里了,这次的测试点没什么问题,要注意字符串所取长度的问题,一定要取到所 ...

  3. 1094 谷歌的招聘 (20分)_25行代码AC

    立志用最少的代码做更高效的表达 PAT乙级最优题解-->传送门 2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘.内容超级简单,就是一个以 .com ...

  4. 【PAT乙级】1094 谷歌的招聘 (20 分)

    题目地址 #include<bits/stdc++.h> using namespace std; int n,k; string s; bool check(string s) {lon ...

  5. PAT乙级 1094 谷歌的招聘(柳婼代码,测试点1、2、4、5分析)

    从任一给定的长度为 L 的数字中,找出最早出现的 K 位连续数字所组成的素数. 输入格式: 输入在第一行给出 2 个正整数,分别是 L(不超过 1000 的正整数,为数字长度)和 K(小于 10 的正 ...

  6. 1094 谷歌的招聘 (20分)

    输入格式: 输入在第一行给出 2 个正整数,分别是 L(不超过 1000 的正整数,为数字长度)和 K(小于 10 的正整数).接下来一行给出一个长度为 L 的正整数 N. 输出格式: 在一行中输出 ...

  7. 7-133 谷歌的招聘 (20 分)

    7-133 谷歌的招聘 (20 分) 2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘.内容超级简单,就是一个以 .com 结尾的网址,而前面的网址是一个 ...

  8. 谷歌的招聘 (20分)

    谷歌的招聘 (20分) 2004 年 7 月,谷歌在硅谷的 101 号公路边竖立了一块巨大的广告牌(如下图)用于招聘.内容超级简单,就是一个以 .com 结尾的网址,而前面的网址是一个 10 位素数, ...

  9. PAT 乙级 1069 微博转发抽奖 (20 分)

    题目:PAT 乙级 1069 微博转发抽奖 (20 分) 经验总结: 可以建立一个set,用于存放中奖用户.若set中有此用户,代表此用户已中奖,奖品顺延. C++代码: #include<bi ...

最新文章

  1. Matlab实现图像白平衡(灰度世界法、全反射算法)
  2. RHEL 5服务篇—部署DNS域名解析服务(一)BIND软件
  3. Jmeter性能测试之if控制器的使用
  4. 跟着书本重学CSS(1)
  5. Java实现第二次登陆强制下线_Android登陆页面记住密码以及强制下线功能的实现...
  6. 【LeetCode】3. Longest Substring Without Repeating Characters
  7. Eureka服务注册中心---SpringCloud
  8. Cisco单臂路由实验
  9. ThinkPHP5框架接入阿里云短信最新版(原大鱼)的方法
  10. python输出引号内的变量值_引号中的Python变量值
  11. openstack windows下远程debug调试(komodo)
  12. 通过子网掩码和ip地址计算网络地址和广播地址
  13. html5字体加粗斜体,font设置字体加粗
  14. HTML+CSS综合实训(二) 仿制视频网
  15. 最全华为ensp路由器启动失败错误代码40怎么办?
  16. 【产业互联网周报】华为面向鲲鹏计算产业启动数据基础设施战略;阿里王坚当选中国工程院院士...
  17. linux sendmail漏洞,linux-sendmail的安全-029
  18. jenkins报错hudson.plugins.git.GitException: Could not init /root/.jenkins/workspace/DeployOrder/order
  19. joycon手柄拆解_爱活电刑室 | 撬开海拉尔的大门! 任天堂Switch全拆解
  20. 英语语法笔记——状语从句(五)

热门文章

  1. 英语单词:flight; fly
  2. 老男孩数据库学习记录
  3. 企业物流营销组合模式探讨 (zt)
  4. 通过图片url转化base64
  5. JavaSwing_4.1: JFrame(窗口)
  6. 处理jmeter tcp 取样器500错误
  7. 日常开发中常见英语单词(都总结好啦)
  8. Hadoop学习----Hadoop介绍
  9. 基于JAVA疫情社区健康评估系统设计与实现 开题报告
  10. Probability Through Experiments