微软校招笔试8.25

第一题 输入int N, N至少两位,至少包含一个数字5, eg. 1345
求 删除其中一个5以后能够得到的最大数字是多少。
eg. -315135  -->   -31135,   15950 ->  1950
我的解法:遍历获取‘5’的index,求删除5后得到的数值,求最大

第二题 输入数组A[], 求共有多少个区间(p,q)使得 A[p] + A[p+1]....A[q] = 0
if result>1000000000 return -1
解法: 前缀和+hashmap,遇到相同前缀和,也就获得了sum0区间

第三题 输入数组 记录一维位置A[], 求有多少个平稳速度区间,
平稳速度区间定义:至少包含连续三个位置,满足等差, eg. 1,2,3 -->  1个 或 9,7,5,3 --> 3个
if result>1000000000 return -1
一维dp做的感觉复杂度太高,求大佬指教。

#微软笔试##微软校招#
全部评论
第三题 力扣413
1 回复 分享
发布于 2022-08-26 07:09 吉林

相关推荐

11-04 19:05
已编辑
东莞城市学院 单片机
不知道怎么取名字_:你这个要实习两年?哪有这么久的,感觉就是即使你毕业了,但还按实习的话,是不是不用给你缴社保公积金啥的
点赞 评论 收藏
分享
评论
4
11
分享

创作者周榜

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