牛客网-2017校招真题
我是一片小树叶
树叶虽小,我心很大
展开
-
1、数串
(个人水平有限,请见谅!)题目描述:设有n个正整数,将他们连接成一排,组成一个最大的多位整数。如:n=3时,3个整数13,312,343,连成的最大整数为34331213。如:n=4时,4个整数7,13,4,246连接成的最大整数为7424613。输入描述:有多组测试样例,每组测试样例包含两行,第一行为一个整数N(N<=100),第二行包含N个数(每个数不超过1000,空格分开)...原创 2018-09-18 18:30:55 · 248 阅读 · 0 评论 -
2、树的高度
(个人水平有限,请见谅!)题目描述:现在有一棵合法的二叉树,树的节点都是用数字表示,现在给定这棵树上所有的父子关系,求这棵树的高度。输入描述:输入的第一行表示节点的个数n(1 ≤ n ≤ 1000,节点的编号为0到n-1)组成,下面是n-1行,每行有两个整数,第一个数表示父节点的编号,第二个数表示子节点的编号。输出描述:输出树的高度,为一个整数。输入:50 10 21 3...原创 2018-09-18 18:33:46 · 584 阅读 · 0 评论 -
3、句子反转
(个人水平有限,请见谅!)题目描述:给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: “hello xiao mi”-> “mi xiao hello”。输入描述:输入数据有多组,每组占一行,包含一个句子(句子长度小于1000个字符)。输出描述:对于每个测试示例,要求输出句子中单词反转后形成的句子。输入:...原创 2018-09-18 18:37:04 · 199 阅读 · 0 评论 -
4、电话号码分身
(个人水平有限,请见谅!)题目描述:继MIUI8推出手机分身功能之后,MIUI9计划推出一个电话号码分身的功能:首先将电话号码中的每个数字加上8取个位,然后使用对应的大写字母代替 (“ZERO”, “ONE”, “TWO”, “THREE”, “FOUR”, “FIVE”, “SIX”, “SEVEN”, “EIGHT”, “NINE”), 然后随机打乱这些字母,所生成的字符串即为电话号码对应...原创 2018-09-18 18:39:13 · 389 阅读 · 0 评论 -
5、水仙花数
(个人水平有限,请见谅!)题目描述:春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+3^3。 现在要求输出所有在m和n范围内的水仙花数。输入描述:输入数据有多组,每组占一行,包括两个整数m和n(100 ≤ m ≤ n ≤ 999)。输出描述:对于每个测试实例,要求输...原创 2018-09-18 18:41:51 · 372 阅读 · 0 评论 -
6、求数列的和
(个人水平有限,请见谅!)题目描述:数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。输入描述:输入数据有多组,每组占一行,由两个整数n(n < 10000)和m(m < 1000)组成,n和m的含义如前所述。输出描述:对于每组输入数据,输出该数列的和,每个测试实例占一行,要求精度保留2位小数。输入:81 42 2输出:94.733.41代码...原创 2018-10-01 09:55:29 · 164 阅读 · 0 评论 -
7、袋鼠过河
(个人水平有限,请见谅!)题目描述:一只袋鼠要从河这边跳到河对岸,河很宽,但是河中间打了很多桩子,每隔一米就有一个,每个桩子上都有一个弹簧,袋鼠跳到弹簧上就可以跳的更远。每个弹簧力量不同,用一个数字代表它的力量,如果弹簧力量为5,就代表袋鼠下一跳最多能够跳5米,如果为0,就会陷进去无法继续跳跃。河流一共N米宽,袋鼠初始位置就在第一个弹簧上面,要跳到最后一个弹簧之后就算过河了,给定每个弹簧的力量...原创 2018-10-01 10:31:33 · 207 阅读 · 0 评论 -
8、彩色宝石项链
(个人水平有限,请见谅!)题目描述:有一条彩色宝石项链,是由很多种不同的宝石组成的,包括红宝石,蓝宝石,钻石,翡翠,珍珠等。有一天国王把项链赏赐给了一个学者,并跟他说,你可以带走这条项链,但是王后很喜欢红宝石,蓝宝石,紫水晶,翡翠和钻石这五种,我要你从项链中截取连续的一小段还给我,这一段中必须包含所有的这五种宝石,剩下的部分你可以带走。如果无法找到则一个也无法带走。请帮助学者找出如何切分项链才...原创 2018-10-01 16:54:29 · 178 阅读 · 0 评论 -
9、保留最大的数
(个人水平有限,请见谅!)题目描述:给定一个十进制的正整数number,选择从里面去掉一部分数字,希望保留下来的数字组成的正整数最大。输入描述:输入为两行内容,第一行是正整数number,1 ≤ length(number) ≤ 50000。第二行是希望去掉的数字数量cnt 1 ≤ cnt < length(number)。输出描述:输出保留下来的结果。输入:325 1...原创 2018-10-01 18:39:36 · 191 阅读 · 0 评论 -
10、统计字符
(个人水平有限,请见谅!)题目描述:给定一个英文字符串,请写一段代码找出这个字符串中首先出现三次的那个英文字符(需要区分大小写)。输入描述:输入数据一个字符串,包括字母,数字等。输出描述:输出首先出现三次的那个英文字符。输入:Have you ever gone shopping and输出:e代码示例:#include <iostream>#includ...原创 2018-10-01 23:05:32 · 268 阅读 · 0 评论 -
11、身份证分组
(个人水平有限,请见谅!)题目描述:18位身份证的编码规则是:前1、2位数字表示:所在省(直辖市、自治区)的代码第3、4位数字表示:所在地级市(自治州)的代码第5、6位数字表示:所在区(县、自治县、县级市)的代码;第7—14位数字表示:出生年、月、日;第15、16位数字表示:所在地的派出所的代码;第17位数字表示性别:奇数表示男性,偶数表示女性;第18位数字是校检码,用来检验身份...原创 2018-10-02 10:28:15 · 318 阅读 · 0 评论 -
12、酒店价格
(个人水平有限,请见谅!)题目描述:酒店房间的价格录入是通过时间段来录入的,比如10月1日至10月7日800元,10月8日至10月20日500元,请实现以下函数int[][] merge(int[][] dateRangePrices),输入是某个酒店多个日期段的价格,每个日期段(终止日期大于等于起始日期)和对应的价格使用长度为3的数组来表示,比如[0, 19, 300], [10, 40, ...原创 2018-10-02 14:23:14 · 228 阅读 · 0 评论 -
13、filename extension
题目描述:Please create a function to extract the filename extension from the given path,return the extracted filename extension or null if none.*输入描述:输入数据为一个文件路径。输出描述:对于每个测试实例,要求输出对应的filename extensi...原创 2018-10-02 14:37:27 · 237 阅读 · 0 评论 -
14、整数加法
(个人水平有限,请见谅!)题目描述:请设计一个算法能够完成两个用字符串存储的整数进行相加操作,对非法的输入则返回error。输入描述:输入为一行,包含两个字符串,字符串的长度在[1,100]。输出描述:输出为一行。合法情况输出相加结果,非法情况输出error。输入:123 123abd 123输出:246error代码示例:#include <iostream...原创 2018-10-02 20:45:33 · 218 阅读 · 0 评论 -
15、拼凑面额
(个人水平有限,请见谅!)题目描述:给你六种面额1、5、10、20、50、100元的纸币,假设每种币值的数量都足够多,编写程序求组成N元(N为0-10000的非负整数)的不同组合的个数。输入描述:输入为一个数字N,即需要拼凑的面额输出描述:输出也是一个数字,为组成N的组合个数。输入:5输出:2代码示例1(暴力破解):#include &lt;iostream&gt;...原创 2018-10-02 21:25:59 · 210 阅读 · 0 评论 -
16、网格走法数目
(个人水平有限,请见谅!)题目描述:有一个X*Y的网格,小团要在此网格上从左上角到右下角,只能走格点且只能向右或向下走。请设计一个算法,计算小团有多少种走法。给定两个正整数int x,int y,请返回小团的走法数目。输入描述:输入包括一行,逗号隔开的两个正整数x和y,取值范围[1,10]。输出描述:输出包括一行,为走法的数目。输入:3 2输出:10代码示例:#incl...原创 2018-10-02 21:56:12 · 197 阅读 · 0 评论 -
17、丢失的三个数
(个人水平有限,请见谅!)题目描述:现在有一个数组,其值为从1到10000的连续增长的数字。出于某次偶然操作,导致这个数组中丢失了某三个元素,同时顺序被打乱,现在需要你用最快的方法找出丢失的这三个元素,并且将这三个元素根据从小到大重新拼接为一个新数字,计算其除以7的余数。 例:丢失的元素为336,10,8435,得到的新数字为103368435,除以七的余数为2。输入描述:输入数据为一行,...原创 2018-10-02 23:03:53 · 164 阅读 · 0 评论 -
18、幸运数
(个人水平有限,请见谅!)题目描述:小明同学学习了不同的进制之后,拿起了一些数字做起了游戏。小明同学知道,在日常生活中我们最常用的是十进制数,而在计算机中,二进制数也很常用。现在对于一个数字x,小明同学定义出了两个函数f(x)和g(x)。 f(x)表示把x这个数用十进制写出后各个数位上的数字之和。如f(123)=1+2+3=6。 g(x)表示把x这个数用二进制写出后各个数位上的数字之和。如12...原创 2018-10-02 23:25:59 · 224 阅读 · 0 评论 -
19、进制均值
(个人水平有限,请见谅!)题目描述:尽管是一个CS专业的学生,小B的数学基础很好并对数值计算有着特别的兴趣,喜欢用计算机程序来解决数学问题,现在,她正在玩一个数值变换的游戏。她发现计算机中经常用不同的进制表示一个数,如十进制数123表达为16进制时只包含两位数7、11(B),用八进制表示为三位数1、7、3,按不同进制表达时,各个位数的和也不同,如上述例子中十六进制和八进制中各位数的和分别是18...原创 2018-10-03 10:31:13 · 159 阅读 · 0 评论 -
20、集合
(个人水平有限,请见谅!)题目描述:给你两个集合,要求{A} + {B}。 注:同一个集合中不会有两个相同的元素。输入描述:每组输入数据分为三行,第一行有两个数字n,m(0 ≤ n,m ≤ 10000),分别表示集合A和集合B的元素个数。后两行分别表示集合A和集合B。每个元素为不超过int范围的整数,每个元素之间有个空格隔开。输出描述:针对每组数据输出一行数据,表示合并后的集合,要求从...原创 2018-10-03 11:09:10 · 229 阅读 · 0 评论 -
21、保卫方案
(个人水平有限,请见谅!)题目描述:战争游戏的至关重要环节就要到来了,这次的结果将决定王国的生死存亡,小B负责首都的防卫工作。首都位于一个四面环山的盆地中,周围的n个小山构成一个环,作为预警措施,小B计划在每个小山上设置一个观察哨,日夜不停的瞭望周围发生的情况。 一旦发生外地入侵事件,山顶上的岗哨将点燃烽烟,若两个岗哨所在的山峰之间没有更高的山峰遮挡且两者之间有相连通路,则岗哨可以观察到另一个...原创 2018-11-04 11:16:12 · 146 阅读 · 0 评论 -
22、字典序
(个人水平有限,请见谅!)题目描述:给定整数n和m, 将1到n的这n个整数按字典序排列之后, 求其中的第m个数。对于n=11, m=4, 按字典序排列依次为1, 10, 11, 2, 3, 4, 5, 6, 7, 8, 9, 因此第4个数是2。对于n=200, m=25, 按字典序排列依次为1 10 100 101 102 103 104 105 106 107 108 109 11 11...原创 2018-11-04 19:55:38 · 238 阅读 · 0 评论 -
23、异或
(个人水平有限,请见谅!)题目描述:给定整数m以及n个数字A1,A2,…An,将数列A中所有元素两两异或,共能得到n(n-1)/2个结果,请求出这些结果中大于m的有多少个。输入描述:第一行包含两个整数n,m。第二行给出n个整数A1,A2,…,An。数据范围:对于30%的数据,1 &lt;= n, m &lt;= 1000对于100%的数据,1 &lt;= n, m, Ai &lt;...原创 2018-11-04 22:02:17 · 289 阅读 · 0 评论 -
24、头条校招
(个人水平有限,请见谅!)题目描述:头条的2017校招开始了!为了这次校招,我们组织了一个规模宏大的出题团队,每个出题人都出了一些有趣的题目,而我们现在想把这些题目组合成若干场考试出来,在选题之前,我们对题目进行了盲审,并定出了每道题的难度系统。一场考试包含3道开放性题目,假设他们的难度从小到大分别为a,b,c,我们希望这3道题能满足下列条件:a<=b<=cb-a<=10...原创 2018-11-04 22:25:33 · 129 阅读 · 0 评论 -
25、最强大脑
(个人水平有限,请见谅!)题目描述:小B乘火车和朋友们一起在N市到M市之间旅行。她在路途中时睡时醒。当她醒来观看窗外的风景时,注意到每个火车站都有一种特别颜色的旗帜,但是她看到的旗帜仅仅是经过的一小部分。小B在乘车过程中有两次清醒的时间,她到达旅程终点时处于睡梦中。出站时,她和朋友们谈论着一路的见闻,朋友们觉得很有意思,他们把N到和M之间经过车站的旗帜颜色依次列出来,然后告诉你小B记得的旗帜颜...原创 2018-11-05 19:34:08 · 375 阅读 · 0 评论 -
26、geohash编码
(个人水平有限,请见谅!)题目描述:geohash编码:geohash常用于将二维的经纬度转换为字符串,分为两步:第一步是经纬度的二进制编码,第二步是base32转码。此题考察纬度的二进制编码:算法对纬度[-90, 90]通过二分法进行无限逼近(本题精度为6)。注意,本题进行二分法逼近过程中只采用向下取整来进行二分,针对二分中间值属于右区间。算法举例如下: 针对纬度为80进行二进制编码...原创 2018-11-05 19:50:20 · 302 阅读 · 0 评论 -
27、素数对
(个人水平有限,请见谅!)题目描述:给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。输入值小于1000。如,输入为10, 程序应该输出结果为2。(共有两对质数的和为10,分别为(5,5),(3,7))。输入描述:输入包括一个整数n,(3 ≤ n < 1000)。输出描述:输出对数。输入:10输出:2代码示例:#include <...原创 2018-11-10 22:05:30 · 192 阅读 · 0 评论 -
28、游戏任务标记
(个人水平有限,请见谅!)题目描述:游戏里面有很多各式各样的任务,其中有一种任务玩家只能做一次,这类任务一共有1024个,任务ID范围[1,1024]。请用32个unsigned int类型来记录着1024个任务是否已经完成。初始状态都是未完成。 输入两个参数,都是任务ID,需要设置第一个ID的任务为已经完成;并检查第二个ID的任务是否已经完成。 输出一个参数,如果第二个ID的任务已经完成输出...原创 2018-11-10 22:54:48 · 178 阅读 · 0 评论 -
29、编码
(个人水平有限,请见谅!)题目描述:假定一种编码的编码范围是a ~ y的25个字母,从1位到4位的编码,如果我们把该编码按字典序排序,形成一个数组如下: a, aa, aaa, aaaa, aaab, aaac, … …, b, ba, baa, baaa, baab, baac … …, yyyw, yyyx, yyyy 其中a的Index为0,aa的Index为1,aaa的Index为2,...原创 2018-11-11 00:22:38 · 197 阅读 · 0 评论 -
30、求和
(个人水平有限,请见谅!)题目描述:输入两个整数 n 和 m,从数列1,2,3…n 中随意取几个数,使其和等于 m,要求将其中所有的可能组合列出来。输入描述:每个测试输入包含2个整数,n和m。输出描述:按每个组合的字典序排列输出,每行输出一种组合。输入:5 5输出:1 42 35代码示例:#include <iostream>#include <...原创 2018-11-11 11:13:00 · 191 阅读 · 0 评论 -
31、删除公共字符
(个人水平有限,请见谅!)题目描述:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”输入描述:每个测试输入包含2个字符串输出描述:输出删除后的字符串输入:They are students.aeiou输出:Thy r stdnts.代...原创 2018-11-11 19:20:44 · 252 阅读 · 1 评论 -
32、倒置字符串
(个人水平有限,请见谅!)题目描述:将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I。输入描述:每个测试输入包含1个测试用例: I like beijing. 输入用例长度不超过100。输出描述:依次输出倒置之后的字符串,以空格分割。输入:I like beijing.输出:beijing. like I...原创 2018-11-11 20:01:32 · 157 阅读 · 0 评论 -
33、n个数里出现次数大于等于n/2的数
(个人水平有限,请见谅!)题目描述:输入n个整数,输出出现次数大于等于数组长度一半的数。输入描述:每个测试输入包含 n个空格分割的n个整数,n不超过100,其中有一个整数出现次数大于等于n/2。输出描述:输出出现次数大于等于n/2的数。输入:3 9 3 2 5 6 7 3 2 3 3 3输出:3代码示例:#include <iostream>#includ...原创 2019-01-20 20:08:29 · 157 阅读 · 0 评论 -
34、n个数里最小的k个
(个人水平有限,请见谅!)题目描述:找出n个数里最小的k个输入描述:每个测试输入包含空格分割的n+1个整数,最后一个整数为k值,n不超过100。输出描述:输出n个整数里最小的k个数。升序输出。输入:3 9 6 8 -10 7 -11 19 30 12 23 5输出:-11 -10 3 6 7代码示例:#include &lt;iostream&gt;#include...原创 2018-11-11 21:01:51 · 144 阅读 · 0 评论 -
35、字符串中找出连续最长的数字串
(个人水平有限,请见谅!)题目描述:读入一个字符串str,输出字符串str中的连续最长的数字串。输入描述:测试输入包含1个测试用例,一个字符串str,长度不超过255。输出描述:在一行内输出str中里连续最长的数字串。输入:abcd12345ed125ss123456789输出:123456789代码示例:#include &lt;iostream&gt;using...原创 2018-11-11 21:13:51 · 185 阅读 · 0 评论 -
36、数字和为sum的方法数
(个人水平有限,请见谅!)题目描述:给定一个有n个正整数的数组A和一个整数sum,求选择数组A中部分数字和为sum的方案数。当两种选取方案有一个数字的下标不一样,我们就认为是不同的组成方案。输入描述:第一行为两个正整数n(1 ≤ n ≤ 1000),sum(1 ≤ sum ≤ 1000)。第二行为n个正整数Ai(32位整数),以空格隔开。输出描述:输出所求的方案数。输入:5 1...原创 2018-11-11 22:32:55 · 149 阅读 · 0 评论 -
37、进制转换
(个人水平有限,请见谅!)题目描述:给定一个十进制数M,以及需要转换的进制数N。将十进制数M转化为N进制数。输入描述:输入为一行,M(32位整数)、N(2 ≤ N ≤ 16),以空格隔开。输出描述:为每个测试实例输出转换后的数,每个输出占一行。如果N大于9,则对应的数字规则参考16进制(比如,10用A表示,等等)。输入:7 2输出:111代码示例:#include &l...原创 2019-01-16 10:43:43 · 595 阅读 · 0 评论 -
38、末尾0的个数
(个人水平有限,请见谅!)题目描述:输入一个正整数n,求n!(即阶乘)末尾有多少个0? 比如: n = 10; n! = 3628800,所以答案为2。输入描述:输入为一行,n(1 ≤ n ≤ 1000)。输出描述:输出一个整数,即题目所求。输入:10输出:2代码示例:#include &lt;iostream&gt;using namespace std;in...原创 2019-01-16 10:56:22 · 186 阅读 · 0 评论 -
39、地下迷宫
(个人水平有限,请见谅!)题目描述:小青蛙有一天不小心落入了一个地下迷宫,小青蛙希望用自己仅剩的体力值P跳出这个地下迷宫。为了让问题简单,假设这是一个n*m的格子迷宫,迷宫每个位置为0或者1,0代表这个位置有障碍物,小青蛙达到不了这个位置;1代表小青蛙可以达到的位置。小青蛙初始在(0,0)位置,地下迷宫的出口在(0,m-1)(保证这两个位置都是1,并且保证一定有起点到终点可达的路径),小青蛙在...原创 2019-01-16 15:39:54 · 223 阅读 · 0 评论 -
40、餐馆
(个人水平有限,请见谅!)题目描述:某餐馆有n张桌子,每张桌子有一个参数:a 可容纳的最大人数; 有m批客人,每批客人有两个参数:b人数,c预计消费金额。 在不允许拼桌的情况下,请实现一个算法选择其中一部分客人,使得总预计消费金额最大。输入描述:输入包括m+2行。 第一行两个整数n(1 &lt;= n &lt;= 50000),m(1 &lt;= m &lt;= 50000) 第二行为n个...原创 2019-01-16 21:16:01 · 174 阅读 · 0 评论