import sys bear_num, candy = sys.stdin.readline().strip().split() bear_num, candy = int(bear_num), int(candy) energy = [int(x) for x in sys.stdin.readline().strip().split()] energy.sort() bear = {} for i in range(bear_num): line = sys.stdin.readline().strip().split() bear[i] = { 'power': int(line[0]), 'hungry': int(line[1]), } bear = dict(sorted(bear.items(), key=lambda item: item[1]['power'], reverse=True)) for v in bear.values(): hungry = v['hungry'] while energy != [] and hungry >= energy[0]: i = -1 # 遍历寻找能量不超过hungry的最大饼干 while energy[i] > hungry and i > -len(energy): i -= 1 hungry -= energy[i] energy.pop(i) v['hungry'] = hungry # 最终输出需要按照小熊顺序输出 bear = dict(sorted(bear.items(), key=lambda item: item[0])) for v in bear.values(): print(v['hungry'])