#AT1831. C - Fair Candy Distribution
C - Fair Candy Distribution
C - 公平分发糖果
得分:300分
问题描述
在高桥王国有$N$个公民。每个公民都有一个国家身份证号码,第$i$个公民的身份证号码是$a_i$。这里,所有的$a_i$两两不同。
高桥决定按照以下方式将$K$块糖果分发给公民们,直到没有糖果为止。
- 当有$N$块或更多的糖果时,每位公民分发一块糖果。
- 否则,令$K'$为此时剩余的糖果数,将一块糖果分发给拥有$K'$个最小身份证号码的公民。
最后,第$i$个公民会得到多少块糖果?
约束
- $1 \leq N \leq 2 \times 10^5$
- $1 \leq K \leq 10^{18}$
- $1 \leq a_i \leq 10^9$
- 所有的$a_i$两两不同。
- 输入中的数都是整数。
输入
从标准输入中以以下格式给出输入:
输出
输出$N$行。第$i$行应该包含第$i$个公民收到的糖果的数量。
2 7
1 8
4
3
高桥会按以下方式分发糖果:
- 每个人分发一块糖果,剩下5块糖果。
- 每个人分发一块糖果,剩下3块糖果。
- 每个人分发一块糖果,剩下1块糖果。
- 剩下的一块糖果分发给第1个公民,没有剩余糖果。
最后,第1个公民将得到4块糖果,第2个公民将得到3块糖果。
1 3
33
3
由于只有一个公民,高桥会将所有的糖果都分给这个第1个公民。
7 1000000000000
99 8 2 4 43 5 3
142857142857
142857142857
142857142858
142857142857
142857142857
142857142857
142857142857