电商网站建设代码大全,自己搭建的网站可以收费吗,wordpress的php用什么版本好,中国优秀网站解题思路#xff1a; 先射击左边和先射击右边两种情况#xff0c;就是2*1/n*(n-1)的概率。 解题思路#xff1a; 枚举所有的评论作为最小值#xff0c;按评论从大到小排序#xff0c;每次遍历到的都是最小值。要想得到以该评论为最小值的最大优秀度#xff0c;就要维护一… 解题思路 先射击左边和先射击右边两种情况就是2*1/n*(n-1)的概率。 解题思路 枚举所有的评论作为最小值按评论从大到小排序每次遍历到的都是最小值。要想得到以该评论为最小值的最大优秀度就要维护一个包含该评论的点赞数之和即前i个数中取k-1个让点赞数最大这可以通过最小堆维护如果当前数大于最小堆对顶则更新。 import heapqn, k map(int, input().split())
a list(map(int, input().split()))
b list(map(int, input().split()))
c sorted(zip(a, b), keylambda x: -x[1])s 0
q []
res 0
for i, (ai, bi) in enumerate(c):if i k:s ai# 用小根堆维护最大的k个数这样最小的数就在堆顶heapq.heappush(q, ai)else:# 如果当前数比堆顶大就替换堆顶if q[0] ai:s ai - q[0]heapq.heappop(q)heapq.heappush(q, ai)res max(res, s * bi)print(res) 解题思路 对于每个笔记时间越长越有可能成为最多的点赞数尽可能增加自己存在单调性可以用二分枚举需要增加的最小点赞数。而且给自身点赞数一定是奇数先增加自己。判断时通过比较增加该点赞数后整个数组点赞总数和最坏情况下整个数组点赞总数全部一样都是最多。 n int(input())
a list(map(int, input().split()))
mx, s max(a), sum(a)
res [0] * ndef check(x, p):if x % 2 0:#偶数的时间段用不上给自身永远是奇数给其它的永远是偶数。x - 1p x // 2 1#自身增加return s x p * n#如果当前数组加上增加的数不大于最坏情况for i in range(n):if a[i] mx:res[i] selif n 2:res[i] -1 if a[i] mx - 1 else 1else:l, r 1, 10 ** 9while l r:mid (l r) // 2if check(mid, a[i]):r midelse:l mid 1res[i] s lprint(\n.join(map(str, res)))