题目描述
Farmer John 的奶牛对甜食情有独钟,它们尤其喜欢吃糖果棒。FJ 共有 N 头奶牛,每头奶牛都有一个特定的初始高度。他想要喂它们 M 根糖果棒,每根糖果棒的高度也各不相同(1≤N,M≤2⋅1051≤N,M≤2⋅100000)。
FJ 计划按照输入给出的顺序,逐一喂给奶牛们糖果棒。然后,奶牛们会按照输入给出的顺序一个接一个地排队,走向糖果棒,每头奶牛最多吃到与它高度相同的部分(因为它们够不到更高的地方)。即使奶牛吃掉了糖果棒的底部,糖果棒也在最初悬挂的地方保持不动,并不会被降低到地面。如果糖果棒的底部已经高于某头奶牛的高度,那么这头奶牛在它的回合中可能什么也吃不到。每头奶牛轮流吃过后,它们的身高会增加它们吃掉的糖果棒的单位数量,然后农夫约翰挂上下一根糖果棒,奶牛们再次重复这个过程(第一头奶牛再次成为第一个开始吃下一根糖果棒的)。
输入格式
第一行包含 N 和 M。
接下来的一行包含 N 头奶牛的初始高度,每头奶牛的高度都在 [1,109][1,109] 的范围内。
接下来的一行包含 M 根糖果棒的长度,每根糖果棒的长度都在 [1,109][1,109] 的范围内。
输出格式
输出 N 行,表示每头奶牛最终的高度。
请注意,由于这个问题涉及的整数大小较大,可能需要使用 64 位整数数据类型(例如,在 C/C++ 中使用 long long
类型)。
输入输出样例
输入
3 2 3 2 5 6 1
输出
7 2 7</