小米 0902 开发笔试

打卡题a了,tm不支持go

老年人艰难上手python

import math

n = int(input().strip().split(" ")[0])

datastr = input().strip()
diff = math.inf
res = 0
for i in datastr.split(","):
    cur1, cur2 = map(int, i.split(":"))
    if abs(cur1 - n) < diff:
        diff = abs(cur1 - n)
        res = cur2
    elif abs(cur1 - n) == diff:
        res = (res + cur2) / 2.0
print("%.1f" % res)

n = input().strip().split(",")
data = []
for i in n:
    cur1, cur2 = map(int, i.split(":"))
    data.append([cur1, cur2])
data.sort(key=lambda x: (x[0] - x[1], x[1], -x[0]))
res = max(data[0])
temp = data[0][0]
for i in range(1, len(data)):
    if data[i][1] > data[i][0]:
        if data[i][1] - data[i][0] >= res:
            res = data[i][1]
            continue
        if data[i][1] - data[i][0] < res:
            diff = res - data[i][1] + data[i][0]
            res = data[i][1] + diff
            # res += diff
            continue

    else:
        res = res + data[i][0]
if res >= 4800:
    print(-1)
else:
    if res < sum([data[i][0] for i in range(len(data))]):
        print(sum([data[i][0] for i in range(len(data))]))
    else:
        print(res)

全部评论
s = list(input().split(',')) a = [] for i in range(len(s)): tmp = s[i].split(':') a.append((int(tmp[0]),int(tmp[1]))) a = sorted(a,key = lambda x:(x[1],-x[0])) #print(a) res = max(a[0]) for i in range(1,len(a)): if res4800: print(-1) else: print(res)
1 回复 分享
发布于 2023-09-04 23:54 广东
请问第二题的思路是什么呀,感谢
点赞 回复 分享
发布于 2023-09-04 20:19 北京

相关推荐

点赞 评论 收藏
分享
05-26 10:24
门头沟学院 Java
qq乃乃好喝到咩噗茶:其实是对的,线上面试容易被人当野怪刷了
找工作时遇到的神仙HR
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

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