广联达笔试题解0729

第一题

杰夫非常喜欢种草,他自己有一片草地,为了方便起见,我们把这片草地看成一行从左到右,并且第 i 个位置的草的高度是hi。
杰夫在商店中购买了m瓶魔法药剂,每瓶魔法药剂可以让一株草长高x,杰夫希望每次都能有针对性的使用药剂,也就是让当前长得最矮的小草尽量高,现在杰夫想请你告诉他在使用了m瓶魔法药剂之后,最矮的小草在这种情况下最高能到多少。

输入描述
第一行三个整数n, m, x分别表示小草的个数,魔法药剂的个数以及每瓶魔法药剂让小草长高的高度。(1≤n,m,x≤1e5)  第二行n个整数分别表示第i株小草的高度ai(1≤ai≤1e9)  输出描述
使用了m瓶药剂之后最矮的小草的最高高度。
import heapq
n, m, x = map(int, input().strip().split(' '))
grass = list(map(int, input().strip().split(' ')))
heapq.heapify(grass)

for _ in range(m):
    c = heapq.heappop(grass)
    heapq.heappush(grass, c + x)

print(str(heapq.heappop(grass)))

第二题

题目描述:
我们希望一个序列中的元素是各不相同的,但是理想和现实往往是有差距的。现在给出一个序列A,其中难免有些相同的元素,现在提供了一种变化方式,使得经过若干次操作后一定可以得到一个元素各不相同的序列。
这个操作是这样的,令x为序列中最小的有重复的数字,你需要删除序列左数第一个x,并把第二个x替换为2*x。
请你输出最终的序列。
例如原序列是[2,2,1,1,1],一次变换后变为[2,2,2,1],两次变换后变为[4,2,1],变换结束

输入描述
输入第一行包含一个正整数n,表示序列的长度为n(1<=n<=50000)  第二行有n个整数,初始序列中的元素。(1<=a_i<=10^8)  输出描述
输出包含若干个整数,即最终变换之后的结果。
from collections import defaultdict
import heapq

n = int(input())
l = list(map(int, input().strip().split(' ')))

q = []
heapq.heapify(q)
c = defaultdict(list)
for idx, item in enumerate(l):
    c[item].append(idx)
for k in c:
    heapq.heapify(c[k])
    if len(c[k]) >= 2:
        heapq.heappush(q, k)

while q:
    t = heapq.heappop(q)
    re = heapq.heappop(c[t])
    l[re] = 'a'
    n = heapq.heappop(c[t])
    l[n] *= 2
    if len(c[t]) >= 2:
        heapq.heappush(q, t)

    if t * 2 in c:
        heapq.heappush(c[t * 2], n)
    else:
        c[t * 2] = [n]
        heapq.heapify(c[t * 2])

    if (len(c[t * 2]) >= 2) and ((t * 2) not in q):
        heapq.heappush(q, t * 2)

print(' '.join([str(i) for i in l if i != 'a']))

第三题

不会了

#笔经#
全部评论
楼主你好,请问你是什么岗位?开发的话,是Java方向还是C++方向?或者其他语言方向~
点赞
送花
回复 分享
发布于 2020-07-29 20:30
前两道题就考个堆呗,用了就不超时😂
点赞
送花
回复 分享
发布于 2020-07-29 20:34
秋招专场
校招火热招聘中
官网直投
老哥第二题清晰啊,我第二题只有64%,第三题做出来吗
点赞
送花
回复 分享
发布于 2020-07-29 20:55
可以的老哥
点赞
送花
回复 分享
发布于 2020-07-29 21:10
第一题我为啥只有55啊。。。。不是每次浇最低那个,最后输出最低的
点赞
送花
回复 分享
发布于 2020-07-29 21:16
笔试还没完呢😅现在发题解好像不太好
点赞
送花
回复 分享
发布于 2020-07-29 21:29
第一题用dfs回溯行不行?
点赞
送花
回复 分享
发布于 2020-07-29 23:22

相关推荐

10 31 评论
分享
牛客网
牛客企业服务