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

题目

1094 谷歌的招聘 (20 分)

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
2468001680

输出样例 2:

404

代码 

#include<stdio.h>
#include<math.h>
int number(char* c,int n);     /*求连续几位的值,n是位数*/
int check(int n);
int main(){int n,wei,i,x=0;          /*这里的n是长度,wei是位数,x用来记录是否存在这样一个素数*/char c[1010];scanf("%d %d",&n,&wei);    getchar();gets(c);for(i=0;i<=n-wei;i++)       /*注意长度,不要是小于,不要是小于没有等于*/{if(check(number(&c[i],wei))==1){x=1;break;}}if(x==1){for(x=0;x<wei;x++)       /*输出的位数要与wei相同*/printf("%c",c[i+x]);}elseprintf("404");return 0;
}
int number(char* c,int n){int i,number=0;for(i=0;i<n;i++)number=number*10+c[i]-'0';return number;}
int check(int n){int i;if(n==0)return 0;if(n==1)return 0;if(n==2)return 1;for(i=2;i<=sqrt(n);i++)    /*如果是小于等于n会超时*/{if(n%i==0)return 0;}return 1;}

哦吼吼,马上就能从一级萌新到二级萌新了

PAT 1094 谷歌的招聘 (20 分) c语言相关推荐

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

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

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

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

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

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

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

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

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

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

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

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

  7. 谷歌的招聘 (20分)

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

  8. PAT 1018 锤子剪刀布 (20分) C语言实现

    1018 锤子剪刀布 (20分) 现给出两人的交锋记录,请统计双方的胜.平.负次数,并且给出双方分别出什么手势的胜算最大. 输入格式: 输入第 1 行给出正整数 N(≤10 ​5 ​​ ),即双方交锋 ...

  9. PAT 1024 科学计数法 (20分) C语言实现

    1024 科学计数法 (20分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [±][1-9].[0-9]+E[±][0-9]+,即数字的整数部分只有 1 位,小数部 ...

最新文章

  1. 独家 | 如何创建用于离线估算业务指标的测试集?(附代码链接)
  2. apache代理时java获取IP的问题
  3. jvm内存收集器总结(图片)
  4. 技术分享连载(八十九)
  5. 干货!639页《深度学习:Deep Learning》硬核课程PPT
  6. js设置时间在ie中部兼容总是NAN的问题
  7. ApacheCN 深度学习译文集 20210125 更新
  8. Linux rescue救援(光盘修复)模式详解
  9. TortoiseSVN文件夹及文件图标不显示的解决办法
  10. html含有一级子元素,html – 根据父级内的计数设置子元素
  11. cdr怎么转换成psd转换为位图标准_CorelDRAW矢量图怎么转位图?
  12. GHost win7(2016.05)版本安装后,清除流氓软件的过程
  13. 数学中最神奇的常数-无理数e的由来
  14. 网站被黑(BUGKU)
  15. EPC 的RFID 标准体系
  16. 如何在高德地图windowInfo弹窗中使用VUE组件
  17. 计算机电缆价格范围,计算机电缆DJYPVPR价格,报价
  18. zepto和jquery
  19. 只有微信账号,我可以查询聊天记录吗?
  20. 局域网内,如何使用命令行关闭别人的电脑

热门文章

  1. Windows10分屏,扩展显示器2刷新率只有29Hz
  2. 服务器端口被占用如何解决
  3. 大学计算机期末总结范文,大学计算机课期末总结.doc
  4. 什么是Richard Feynman 积分技巧
  5. 高级过程控制传热自动化实训装置
  6. signature=ff245c21bd1bccc2fe43f26058f7e9c1,No, this is Patrik
  7. 参数调优:K折交叉验证与GridSearch网格搜索
  8. 设置页面高度为浏览器可视窗口大小
  9. 前端毕业设计项目:基于Vue+Nodejs实现宿舍管理系统
  10. QQ传输文件原理参考(来自互联网)