牛客题解官
牛客题解官
全部文章
分类
题解(475)
归档
标签
去牛客网
登录
/
注册
牛客题解官的博客
全部文章
(共488篇)
回文字符串
题目难度:二星 考察点:动态规划 方法1:暴力、二进制枚举 1. 分析 我们分析一下题意,对于每个输入的字符串s,它的子串(包括不连续的子串)有2^n个,其中n为字符串s的长度,那么我们就可以枚举这2^n个子串,判断当前枚举到子串是不是回文字符串,如果是回文字符串的话,就记录答案,并取...
2020-06-04
1
787
字符串排序
题目难度:一星 考察点:字符串、排序 方法:字符串、排序 1. 分析 我们分析一下题意,对于输入的若干个长度小于100的字符串,每个字符串样本的最后六位均是数字,所以首先需要将每一个字符串中的后六位字符(即数字)提取出来,但是需要注意的是提取的后六位数字仍然是一个字符串,此时将字符串转...
2020-06-04
0
914
字符串归一化
题目难度:一星 考察点:计数 方法:计数 1. 分析: 根据题意,我们统计26个字母每个字母出现的次数,对于字符串中的每个字符统计个数,具体的统计方法就是用一个计数数组保存个数,即a[s[i]-'a']++,最后再输出的时候判断a[i]是否为0,如果不为0就输出对应的字母和字母统计的个...
2020-06-04
0
840
善变的同伴
题目难度:三星 考察点:动态规划、滚动数组 方法1:动态规划 1. 分析: 这个题的本质就是就一个最大的m段字段和,本质还是动态规划。设一个dp[i][j] 表示以第j个数字结尾的前面j个数字取i段的最大和。那么对于第j个数字来说就有两种选择: (1). 第j个数字属于最后一段,即dp...
2020-06-04
1
727
魔法深渊
题目难度:二星 考察点:动态规划、预处理 方法1:暴力、动态规划 分析: 这个题很像之前的跳台阶:一共有n个台阶,青蛙只能跳1阶或者是2阶,问有多少种跳法? 跳台阶思路如下: 假设青蛙跳n个台阶的跳法为f(n)那么: 如果第一次跳的是1阶,那么剩下的n-1个台阶...
2020-06-04
0
642
搭积木
题目难度:三星考察点:排序、最长不下降子序列(O(nlogn)) 方法1:排序、动态规划 分析:根据题意,我们可以首先按照长度(或者是宽度)其中之一进行排序,那么我们接下来就只需要想办法将宽度搭积木的层数变得最多就可以了,将其转化为了最长不下降子序列(因为序列中是可以有相等的情况)的问题,我们就可...
2020-06-04
1
1567
获得最多的奖金
题目难度:二星考察点:双指针 方法1:暴力、前缀和 分析:我们按照题意进行计算,枚举第一刀下标i和第二刀的下标j即可,然后判断区间[1, i]和区间[j,n]的和是不是相等,如果相等记录答案,取最大值即可。在计算区间和的时候要注意的是需要提前预处理一下前缀和,要不然直接计算区间和的话会使得时间复杂...
2020-06-04
5
901
塔
题目难度:二星考察点:贪心、模拟 方法:贪心、模拟 分析:我们分析一下题意,如果想尽可能的让塔的不稳定性小的话,那么就需要让最高塔高度与最低塔高度的差尽可能低,也就是让最高塔的高度尽可能低,最低塔的高度尽可能高。那么我们每次进行操作的时候就是首先将整个高度数组按照从小到大进行排序,然后高度最大值-...
2020-06-04
1
672
表达式求值
题目难度:一星考察点:枚举 方法1:枚举 分析:我们将所有的可能情况列举出来然后取得最大值,一共有如下6种情况:(1). ans = a + b + c;(2). ans = a + b * c;(3). ans = a * b + c;(4). ans = a * b * c;(5). ans ...
2020-06-04
0
824
整理房间
题目难度:三星考察点:计算几何 方法:计算几何、枚举 分析:对于这道题来说我们有如下需要考虑的地方:(1). 一个点A(x1,y1)围绕一个点B(x2,y2)逆时针旋转90°一次,对应坐标A的变化?旋转多次呢?我们都知道如果B是原点的话,那么逆时针旋转90°一次之后坐标A(x1,y1)将变为C(y...
2020-06-04
0
757
首页
上一页
37
38
39
40
41
42
43
44
45
46
下一页
末页