牛客真题
小马哥MAX
刷题记录BLOG
展开
-
【两次过】【2018拼多多】最大乘积
给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)输入描述:数组大小n无序整数数组A[n]输出描述:满足条件的最大乘积示例1输入复制43 4 1 2输出复制24解题思路://AC的o(n)代码,一定要注意存储的数组类型是long型(之前是int型就没通过)/...原创 2019-03-16 10:41:46 · 185 阅读 · 0 评论 -
【两次过】【2018网易】魔法币
小易准备去魔法王国采购魔法神器,购买魔法神器需要使用魔法币,但是小易现在一枚魔法币都没有,但是小易有两台魔法机器可以通过投入x(x可以为0)个魔法币产生更多的魔法币。魔法机器1:如果投入x个魔法币,魔法机器会将其变为2x+1个魔法币魔法机器2:如果投入x个魔法币,魔法机器会将其变为2x+2个魔法币小易采购魔法神器总共需要n个魔法币,所以小易只能通过两台魔法机器产生恰好n个魔法币,小易需要你帮...原创 2019-05-09 21:11:58 · 105 阅读 · 0 评论 -
【一次过】交错01串
题目描述如果一个01串任意两个相邻位置的字符都是不一样的,我们就叫这个01串为交错01串。例如: "1","10101","0101010"都是交错01串。小易现在有一个01串s,小易想找出一个最长的连续子串,并且这个子串是一个交错01串。小易需要你帮帮忙求出最长的这样的子串的长度是多少。输入描述:输入包括字符串s,s的长度length(1 ≤ length ≤ 50),字符串中只...原创 2019-05-15 09:37:18 · 241 阅读 · 0 评论 -
【两次过】【2018爱奇艺】青草游戏
题目描述牛牛和羊羊都很喜欢青草。今天他们决定玩青草游戏。最初有一个装有n份青草的箱子,牛牛和羊羊依次进行,牛牛先开始。在每个回合中,每个玩家必须吃一些箱子中的青草,所吃的青草份数必须是4的x次幂,比如1,4,16,64等等。不能在箱子中吃到有效份数青草的玩家落败。假定牛牛和羊羊都是按照最佳方法进行游戏,请输出胜利者的名字。输入描述:输入包括t+1行。第一行包括一个整数t(1 ≤ ...原创 2019-05-20 10:34:42 · 194 阅读 · 0 评论 -
【两次过】【2018爱奇艺】红和绿
题目描述牛牛有一些排成一行的正方形。每个正方形已经被染成红色或者绿色。牛牛现在可以选择任意一个正方形然后用这两种颜色的任意一种进行染色,这个正方形的颜色将会被覆盖。牛牛的目标是在完成染色之后,每个红色R都比每个绿色G距离最左侧近。牛牛想知道他最少需要涂染几个正方形。如样例所示: s = RGRGR我们涂染之后变成RRRGG满足要求了,涂染的个数为2,没有比这个更好的涂染方案。输入描述:...原创 2019-05-20 09:27:42 · 194 阅读 · 0 评论 -
【两次过】操作序列
题目描述小易有一个长度为n的整数序列,a_1,...,a_n。然后考虑在一个空序列b上进行n次以下操作:1、将a_i放入b序列的末尾2、逆置b序列小易需要你计算输出操作n次之后的b序列。输入描述:输入包括两行,第一行包括一个整数n(2 ≤ n ≤ 2*10^5),即序列的长度。第二行包括n个整数a_i(1 ≤ a_i ≤ 10^9),即序列a中的每个整数,以空格分割。输出...原创 2019-05-15 10:00:43 · 334 阅读 · 0 评论 -
【三次过】【2018网易】疯狂队列
题目描述小易老师是非常严厉的,它会要求所有学生在进入教室前都排成一列,并且他要求学生按照身高不递减的顺序排列。有一次,n个学生在列队的时候,小易老师正好去卫生间了。学生们终于有机会反击了,于是学生们决定来一次疯狂的队列,他们定义一个队列的疯狂值为每对相邻排列学生身高差的绝对值总和。由于按照身高顺序排列的队列的疯狂值是最小的,他们当然决定按照疯狂值最大的顺序来进行列队。现在给出n个学生的身高,请...原创 2019-05-15 20:18:41 · 245 阅读 · 0 评论 -
【两次过】【2018招行】字符串是否由子串拼接
给出一个非空的字符串,判断这个字符串是否是由它的一个子串进行多次首尾拼接构成的。例如,"abcabcabc"满足条件,因为它是由"abc"首尾拼接而成的,而"abcab"则不满足条件。输入描述:非空字符串输出描述:如果字符串满足上述条件,则输出最长的满足条件的的子串;如果不满足条件,则输出false。示例1输入abcabc输出abc解题思路:...原创 2019-05-15 21:08:01 · 273 阅读 · 0 评论 -
【一次过】【2018爱奇艺】缺失的括号
题目描述一个完整的括号字符串定义规则如下:1、空字符串是完整的。2、如果s是完整的字符串,那么(s)也是完整的。3、如果s和t是完整的字符串,将它们连接起来形成的st也是完整的。例如,"(()())", ""和"(())()"是完整的括号字符串,"())(", "()(" 和 ")"是不完整的括号字符串。牛牛有一个括号字符串s,现在需要在其中任意位置尽量少地添加括号,将其转化为一个完...原创 2019-05-21 09:19:22 · 228 阅读 · 0 评论 -
【两次过】【2018爱奇艺】幸运子序列
题目描述牛牛得到一个长度为n的整数序列V,牛牛定义一段连续子序列的幸运值为这段子序列中最大值和次大值的异或值(次大值是严格的次大)。牛牛现在需要求出序列V的所有连续子序列中幸运值最大是多少。请你帮帮牛牛吧。输入描述:第一行一个整数n,即序列的长度。(2<= n <= 100000)第二行n个数,依次表示这个序列每个数值V[i], (1 ≤ V[i] ≤ 10^8)且保证...原创 2019-05-21 09:33:50 · 333 阅读 · 0 评论 -
【三次过】【2018招行】寻找合法字符串
给出一个正整数n,请给出所有的包含n个'('和n个')'的字符串,使得'('和')'可以完全匹配。例如:'(())()','()()()' 都是合法的;'())()('是不合法的。请按照__字典序__给出所有合法的字符串。输入描述:输入为1个正整数输出描述:输出为所有合法的字符串,用英文逗号隔开示例1输入2输出(()),()()解...原创 2019-05-16 09:42:17 · 520 阅读 · 0 评论 -
【一次过】【2018爱奇艺】循环数比较
题目描述对于任意两个正整数x和k,我们定义repeat(x, k)为将x重复写k次形成的数,例如repeat(1234, 3) = 123412341234,repeat(20,2) = 2020.牛牛现在给出4个整数x1, k1, x2, k2, 其中v1 = (x1, k1), v2 = (x2, k2),请你来比较v1和v2的大小。输入描述:输入包括一行,一行中有4个正整数x...原创 2019-05-16 10:02:40 · 184 阅读 · 0 评论 -
【三次过】【2018爱奇艺】DNA序列
题目描述牛牛又从生物科研工作者那里获得一个任务,这次牛牛需要帮助科研工作者从DNA序列s中找出最短没有出现在DNA序列s中的DNA片段的长度。例如:s = AGGTCTA序列中包含了所有长度为1的('A','C','G','T')片段,但是长度为2的没有全部包含,例如序列中不包含"AA",所以输出2。输入描述:输入包括一个字符串s,字符串长度length(1 ≤ length ≤...原创 2019-05-16 10:39:00 · 283 阅读 · 0 评论 -
【两次过】【二分搜索】【2018爱奇艺】最后一位
题目描述牛牛选择了一个正整数X,然后把它写在黑板上。然后每一天他会擦掉当前数字的最后一位,直到他擦掉所有数位。 在整个过程中,牛牛会把所有在黑板上出现过的数字记录下来,然后求出他们的总和sum.例如X = 509, 在黑板上出现过的数字依次是509, 50, 5, 他们的和就是564.牛牛现在给出一个sum,牛牛想让你求出一个正整数X经过上述过程的结果是sum.输入描述:输入包括...原创 2019-05-22 09:24:37 · 217 阅读 · 0 评论 -
【一次过】【2018爱奇艺】回文素数
题目描述如果一个整数只能被1和自己整除,就称这个数是素数。如果一个数正着反着都是一样,就称为这个数是回文数。例如:6, 66, 606, 6666如果一个数字既是素数也是回文数,就称这个数是回文素数牛牛现在给定一个区间[L, R],希望你能求出在这个区间内有多少个回文素数。输入描述:输入包括一行,一行中有两个整数(1 ≤ L ≤ R ≤ 1000)输出描述:输出一个整...原创 2019-05-17 09:35:05 · 224 阅读 · 0 评论 -
【三次过】【2018网易】【二分查找】牛牛找工作
为了找到自己满意的工作,牛牛收集了每种工作的难度和报酬。牛牛选工作的标准是在难度不超过自身能力值的情况下,牛牛选择报酬最高的工作。在牛牛选定了自己的工作后,牛牛的小伙伴们来找牛牛帮忙选工作,牛牛依然使用自己的标准来帮助小伙伴们。牛牛的小伙伴太多了,于是他只好把这个任务交给了你。输入描述:每个输入包含一个测试用例。每个测试用例的第一行包含两个正整数,分别表示工作的数量N(N<...原创 2019-05-06 21:49:43 · 145 阅读 · 0 评论 -
【两次过】【2018网易】彩色的砖块
题目描述小易有一些彩色的砖块。每种颜色由一个大写字母表示。各个颜色砖块看起来都完全一样。现在有一个给定的字符串s,s中每个字符代表小易的某个砖块的颜色。小易想把他所有的砖块排成一行。如果最多存在一对不同颜色的相邻砖块,那么这行砖块就很漂亮的。请你帮助小易计算有多少种方式将他所有砖块排成漂亮的一行。(如果两种方式所对应的砖块颜色序列是相同的,那么认为这两种方式是一样的。)例如: s = "AB...原创 2019-05-14 09:17:11 · 162 阅读 · 0 评论 -
【一次过】【2018网易】字符串碎片
一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,"aaabbaaac"是由下面碎片组成的:'aaa','bb','c'。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的平均长度是多少。输入描述:输入包括一个字符串s,字符串s的长度length(1 ≤ length ≤ 50),s只含小写字母('a'-'z')输出描述:输出一个整数,表示所有碎片...原创 2019-05-13 19:54:33 · 178 阅读 · 0 评论 -
【一次过】【2018拼多多】六一儿童节
题目描述六一儿童节,老师带了很多好吃的巧克力到幼儿园。每块巧克力j的重量为w[j],对于每个小朋友i,当他分到的巧克力大小达到h[i] (即w[j]>=h[i]),他才会上去表演节目。老师的目标是将巧克力分发给孩子们,使得最多的小孩上台表演。可以保证每个w[i]> 0且不能将多块巧克力分给一个孩子或将一块分给多个孩子。输入描述:第一行:n,表示h数组元素个数 第二行:n...原创 2019-03-18 09:25:41 · 139 阅读 · 0 评论 -
【三次过】【2017腾讯】构造回文
给定一个字符串s,你可以从中删除一些字符,使得剩下的串是一个回文串。如何删除才能使得回文串最长呢?输出需要删除的字符个数。输入描述:输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000.输出描述:对于每组数据,输出一个整数,代表最少需要删除的字符个数。输入例子1:abcdagoogle...原创 2019-04-06 20:47:49 · 155 阅读 · 0 评论 -
【两次过】【2017腾讯】字符移位
小Q最近遇到了一个难题:把一个字符串的大写字母放到字符串的后面,各个字符的相对位置不变,且不能申请额外的空间。你能帮帮小Q吗?输入描述:输入数据有多组,每组包含一个字符串s,且保证:1<=s.length<=1000.输出描述:对于每组数据,输出移位后的字符串。输入例子1:AkleBiCeilD输出例子1:kleieilABCD解题思路:...原创 2019-04-08 20:18:10 · 374 阅读 · 0 评论 -
【一次过】【2017网易】优雅的点
小易有一个圆心在坐标原点的圆,小易知道圆的半径的平方。小易认为在圆上的点而且横纵坐标都是整数的点是优雅的,小易现在想寻找一个算法计算出优雅的点的个数,请你来帮帮他。例如:半径的平方如果为25优雅的点就有:(+/-3, +/-4), (+/-4, +/-3), (0, +/-5) (+/-5, 0),一共12个点。输入描述:输入为一个整数,即为圆半径的平方,范围在32位int范围内。...原创 2019-04-09 09:48:51 · 112 阅读 · 0 评论 -
【三次过】【2017网易】跳石板
小易来到了一条石板路前,每块石板上从1挨着编号为:1、2、3.......这条石板路要根据特殊的规则才能前进:对于小易当前所在的编号为K的 石板,小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X(X为K的一个非1和本身的约数)的位置。 小易当前处在编号为N的石板,他想跳到编号恰好为M的石板去,小易想知道最少需要跳跃几次可以到达。例如:N = 4,M = 24:4->6-&...原创 2019-04-09 11:07:32 · 168 阅读 · 0 评论 -
【一次过】【PriorityQueue】【2017好未来】n个数里最小的k个
找出n个数里最小的k个输入描述:每个测试输入包含空格分割的n+1个整数,最后一个整数为k值,n不超过100。输出描述:输出n个整数里最小的k个数。升序输出示例1输入3 9 6 8 -10 7 -11 19 30 12 23 5输出-11 -10 3 6 7解题思路:使用Priority即可。为了保证更高的拓展性,本题采用固定大小的最大堆堆进...原创 2019-04-15 22:01:44 · 136 阅读 · 0 评论 -
【一次过】【2017好未来】求和
输入两个整数 n 和 m,从数列1,2,3.......n 中随意取几个数,使其和等于 m ,要求将其中所有的可能组合列出来输入描述:每个测试输入包含2个整数,n和m输出描述:按每个组合的字典序排列输出,每行输出一种组合示例1输入5 5输出1 42 35解题思路:标准dfs解法。import java.util.*;public c...原创 2019-04-12 20:13:21 · 113 阅读 · 0 评论 -
【一次过】【2017美丽联合】特殊交换
现有一个n个整数的序列,你要做的就是交换两个数的位置直到整个序列按照升序排列,那么将这个整数序列排好序,需要交换多少次?例如,1,2,3,5,4,我们只需要交换一次,即将5和4交换即可。输入描述:第一行输入一个正整数n(n≤1000),表示数字序列的元素个数,占一行;接下来一行输入从1到n的n个整数排序,中间用空格隔开输出描述:输出序列升序排列需要的最少交换次数输入例子...原创 2019-04-09 20:21:09 · 3608 阅读 · 0 评论 -
【一次过】【2017网易】数字翻转
对于一个整数X,定义操作rev(X)为将X按数位翻转过来,并且去除掉前导0。例如:如果 X = 123,则rev(X) = 321;如果 X = 100,则rev(X) = 1.现在给出整数x和y,要求rev(rev(x) + rev(y))为多少?输入描述:输入为一行,x、y(1 ≤ x、y ≤ 1000),以空格隔开。输出描述:输出rev(rev(x) + rev(...原创 2019-04-09 21:02:07 · 148 阅读 · 0 评论 -
【多次过】【2017网易】最大的奇约数
小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11.现在给出一个N,需要求出 f(1) + f(2) + f(3).......f(N)例如: N = 7f(1) + f(2) + f(3) + f(4) + f(5) + f(6) + f(7) = 1 + 1 + 3 + 1 ...原创 2019-04-09 22:01:35 · 234 阅读 · 0 评论 -
【一次过】【2017网易】买苹果
小易去附近的商店买苹果,奸诈的商贩使用了捆绑交易,只提供6个每袋和8个每袋的包装(包装不可拆分)。 可是小易现在只想购买恰好n个苹果,小易想购买尽量少的袋数方便携带。如果不能购买恰好n个苹果,小易将不会购买。输入描述:输入一个整数n,表示小易想购买n(1 ≤ n ≤ 100)个苹果输出描述:输出一个整数表示最少需要购买的袋数,如果不能买恰好n个苹果则输出-1输入例子1:...原创 2019-04-10 09:47:19 · 126 阅读 · 0 评论 -
【两次过】【2017网易】【背包】双核处理
链接:https://www.nowcoder.com/questionTerminal/9ba85699e2824bc29166c92561da77fa来源:牛客网一种双核CPU的两个核能够同时的处理任务,现在有n个已知数据量的任务需要交给CPU处理,假设已知CPU的每个核1秒可以处理1kb,每个核同时只能处理一项任务。n个任务可以按照任意顺序放入CPU进行处理,现在需要设计一个方案让...原创 2019-04-21 20:15:13 · 136 阅读 · 0 评论 -
【一次过】【2017美团】最大矩形面积
链接:https://www.nowcoder.com/questionTerminal/b0fbb688d01a4f2c8c17e5efd85d5824来源:牛客网给定一组非负整数组成的数组h,代表一组柱状图的高度,其中每个柱子的宽度都为1。 在这组柱状图中找到能组成的最大矩形的面积(如图所示)。 入参h为一个整型数组,代表每个柱子的高度,返回面积的值。输入描述:输入包括...原创 2019-04-17 21:10:04 · 246 阅读 · 0 评论 -
【多次过】【2017美团】【背包】拼凑硬币
给你六种面额 1、5、10、20、50、100 元的纸币,假设每种币值的数量都足够多,编写程序求组成N元(N为0~10000的非负整数)的不同组合的个数。解题思路:import java.util.Scanner;import java.util.Arrays;public class Main{ public static long count(int n){ ...原创 2019-04-17 21:54:31 · 347 阅读 · 0 评论 -
【两次过】【2018唯品会】字符串组合
输入一个字符串,输出该字符串中相邻字符的所有组合。举个例子,如果输入abc,它的组合有a、b、c、ab、bc、abc。(注意:输出的组合需要去重)(40分)输入描述:一个字符串输出描述:一行,每个组合以空格分隔,相同长度的组合需要以字典序排序,且去重。示例1输入bac输出a b c ac ba bac解题思路1:类似Lintcode 17. 子...原创 2019-05-30 21:10:35 · 157 阅读 · 0 评论