杭州银行笔试 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 湖南

相关推荐

5 19 评论
分享
牛客网
牛客企业服务