360笔试

1. 选择题60分,1.5 * 40 题目比较杂有c++还有java
2. 两个编程
(1) 给定一个数组,将数组元素变为相等的最少次数,第一行输入n,第二行输入n个整数
输入9
4 7 6 4 9 3 2 3 4.
提示:
第一步,将所有的4变成9,9 7 6 9 9 3 2 3 9
第二步,将所有的3变成6,9 7 6 9 9 6 2 6 9
第三步,将所有的6变为7,9 7 7 9 9 7 2 7 9
第四步,将所有的7变成9,9 9 9 9 9 9 2 9 9
最后将2变成9

刚开始按照题目的意思写了半天,实际上并不需要,我们只需要记录出现次数最多的那个元素的元素值和出现次数,
首先将数组排序,如果当前的数和上一个数相等,我们就跳过这个数,否则我们应该通过加上某个数使得nums[i]成为之前的众数(在这里因为只需要计算操作次数,所以我们并不关心加上的那个数是多少),res++
最后输出res的值

(2) 字符串的方式
将a-z映射为1-26,那么给定一个字母组成的字符串就可以得到一个由数字组成的字符串
但是这个数字字符串可能会对应原来多个字母组成的字符串
114514,对应的字符串数量为6

简单的动态规划
dp[i] = dp[i-1]
          + dp[i-2]  如果nums[i] 可以和nums[i-1]构成一个字母
全部评论

相关推荐

落花情:同学,瞅瞅我司,医疗独角兽,校招刚开,名额有限,先到先得,我的主页最新动态,绿灯直达,免笔试~
点赞 评论 收藏
分享
09-23 14:45
贵州大学 财务
牛客68802037...:怎么9.2佬人手一个中信证券实习
点赞 评论 收藏
分享
09-17 19:25
已编辑
太原理工大学 游戏测试
叁六玖:公司名发我,我要这个HR带我打瓦
我的秋招日记
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务