n, m = list(map(int, input().split())) vp = list(map(int, input().split()))      # 数量 prices = list(map(int, input().split()))  # 价格 info = [] for v, p in zip(vp, prices):     info.append([v, p]) info = sorted(info, key=lambda x:x[0]) nums = info[0][0]    # 初始份数 money = info[0][1] for i in range(1, n):     breakFlag = 1     n = info[i][0] - info[i-1][0]     if n == 0:         breakFlag = 0         money += info[i][1]         continue     elif n > 0:         if n <= m // money:             m -= money * n             nums += n             money += info[i][1]         else:             n = m // money             m -= money * n             nums += n             money += info[i][1]             break allPrices = sum(prices) if m >= allPrices:     nums += (m // allPrices) print(nums)
点赞 评论

相关推荐

不知道怎么取名字_:现在找工作是真的太不容易了
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务