前提准备
(1)时长150分钟,建议提前把考试环境布置好,以免太冷或太热。
(2)准备一个有电的手机,或一直充电也行,因为考试的时候需要扫描一个二维码,进入到一个专用页面,并且要保持屏幕常亮。
(3)提前调试好ide,因为笔试过程中是可以使用本地ide进行调试的。
(4)先去百度搜索牛客网处理输入输出流。或者等hr发了笔试链接后,进入笔试网址开始答题前,也会提示你先去练习输入输出,同时会给你一个链接地址,进去练习即可。
注意事项
(1)总共三道编程题,两道一星题(100分),一道二星题(200分)。
(2)可以先预览题目,然后选择一星题或者二星题进行答题,一旦选择题型后,必须提交完本题型才可进入下一题型。
(3)代码写完后,可以点击右上角自测按钮,先把给的几个测试用例都通过后,然后点击左下方的“保存与提交”按钮,查看通过率。
(4)建议一星题不要超过50分钟,通过率达到85%左右即可。
(5)满分是400分,160及格。
(6)一般会按通过率给分,比如一星题通过85%,大概就会给85分左右。不过以防万一,还是尽量高一点。
开始答题
(1) 最大花费金额
- 在一堆商品中买三个,使商品总额最接近持有金额,但不能超过。如果持有金额不够买三个商品,返回-1
- 输入描述:
- 第一行输入n个商品价格,用空格隔开
- 第二行输入一个金额t
- 输出描述:最接近持有金额的商品总额或-1
0 < n <=1000
0 < t <= 1000
例一:
- 输入:
- 23 33 22 18
- 65
- 输出:63
- 解释:可以购买 23 + 22 + 18 = 63
例二:
- 输入:
- 23 33 22 18
- 62
- 输出:-1
- 解释:持有金额不够买三个商品。
(2) 斗地主求顺子
- 给定13张扑克牌(不包括大小王),牌面大小为3<4<5<6<7<8<9<10<J<Q<K<A<2(2不能组成顺子)。输出最多的顺子。如果不能组成一个顺子,则输出-1
- 输入描述:输入13张扑克,用空格隔开
- 输出描述:输出顺子。并尽可能使顺子数量最多。
- 例一:
- 输入:5 4 6 8 Q A 2 3 7 J 10 9 2
- 输出:
- 3 4 5 6 7
- 8 9 10 J Q
(3) 最长完全连续方波
-
给定一串由0和1组成的方波信号,每个方波之间由0个或多个低位(0)隔开。求最长的完全连续方波。如果不存在,则输出-1。
-
完全连续方波必须满足如下条件:
- (1) 首位和末位都是0
- (2) 整个方波都是01交替的
-
输入描述:一串由0和1组成的字符串,代表整个方波信号
-
输出描述:最长完全连续方波。 例一:
-
输入:000101011001010010
-
输出:01010
-
解释:
- 分为以下几个方波:
- (1) 00
- (2) 01010110 由于有两个连续高位,不是
- (3) 01010 符合完全连续方波定义
- (4) 010