杭州银行笔试 10.16

两个编程 AC

1、统计能构成hzbank的个数

注意不区分大小写。
分别统计每个字母的数量,他们的最小值即可

2、基金的最大期望值
题目:对于一个序列,每次可以进行以下操作,取最左边或者最右边的数到记录本,或者将记录本中的一个数放到最左边或者最右边。
求最大操作k次的情况下,最终和最大是多少。
例子:-10 8 2 1 2 6, 4 答案:14

做法:
首先想到可以一直取数,然后把最小的值扔掉。所以可以把 k分成两部分,一部分是取数需要的操作,一部分是扔数需要的操作。然后用优先队列维护所有取的数,每次扔掉堆顶的数即可。

具体我是这么做的。首先把原数组复制了一份,这样从左右两边取的数就可以转化成从中间一直往后取。然后从1-K枚举,表示取数的个数,剩下的作为最多需要扔的个数。
还有一个特判是当K很大时,我们保留所有正数就可以。
全部评论
第二题a了吗
1 回复 分享
发布于 2023-10-16 20:29 安徽
https://m.nowcoder.com/discuss/1224905 Java版
1 回复 分享
发布于 2023-10-24 14:41 湖北
大哥你是100了吗还是?
点赞 回复 分享
发布于 2023-10-16 20:24 浙江
还是没太看懂 /(ㄒoㄒ)/~~
点赞 回复 分享
发布于 2023-10-16 20:35 四川
牛哇
点赞 回复 分享
发布于 2023-10-16 20:46 广东
蹲蹲第二题代码,私发也行,当时只过了40
点赞 回复 分享
发布于 2023-10-24 11:14 湖南

相关推荐

2024-11-10 12:33
陕西师范大学 Java
11.10晚上7点,重复了,都是技术开发,选哪个好
正峰欧巴本体:中移吧,建信金科我听说很多人是先面试完的了
点赞 评论 收藏
分享
评论
5
19
分享
牛客网
牛客企业服务