4079: 公平的糖果分配

内存限制:1024 MB 时间限制:2.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

# Fair Candy Distribution ## 题目描述 小高有$N$个公民和$K$块糖果。每个公民都有一个唯一的身份证号码$a_i$。小高决定按以下方式分发糖果,直到他没有更多的糖果: - 当他有$N$块或更多糖果时,每个公民分发一块。 - 否则,假设他现在有$K'$块糖果,他会将这些糖果分发给身份证号码最小的$K'$个公民,每人一块。 当所有糖果分发完毕后,第$i$个公民会得到多少块糖果?

输入

## 输入格式 输入从标准输入中给出,格式如下: $N \ K$ $a_1 \ a_2 \ ... \ a_N$

输出

## 输出格式 输出$N$行。第$i$行应包含第$i$个公民收到的糖果数量。

样例输入 复制

2 7
1 8

样例输出 复制

4
3

提示

## 输入输出样例 ### 输入样例1 ``` 2 7 1 8 ``` ### 输出样例1 ``` 4 3 ``` ### 输入样例2 ``` 1 3 33 ``` ### 输出样例2 ``` 3 ``` ### 输入样例3 ``` 7 1000000000000 99 8 2 4 43 5 3 ``` ### 输出样例3 ``` 142857142857 142857142857 142857142858 142857142857 142857142857 142857142857 142857142857 ``` ## 数据范围与提示 【样例1说明】 小高将按以下方式分发糖果: - 每人分发一块,剩下5块。 - 每人分发一块,剩下3块。 - 每人分发一块,剩下1块。 - 将最后一块分发给第1个公民。 最终,第1个公民将收到4块糖果,第2个公民将收到3块糖果。 【样例2说明】 由于只有一个公民,小高将所有糖果都分发给这第1个公民。 【数据范围】 - $1 \leq N \leq 2 \times 10^5$ - $1 \leq K \leq 10^{18}$ - $1 \leq a_i \leq 10^9$ - 所有$a_i$互不相同 - 输入中的所有值都是整数 ## 题目来源 ABC208C ## 题目背景 公平的糖果分配是一个经典的问题,通常出现在算法和逻辑谜题中。在这个问题中,给定一组孩子和一定数量的糖果,你需要找到一种分配方案,使得每个孩子都能获得相同数量的糖果,并且要求尽可能平均。 如果糖果的数量不能被孩子数整除,那么有时候会要求尽可能接近平均分配,或者根据其他规则进行分配。 解决这个问题的方法通常包括使用数学方法(比如除法和取余数),或者编写一个算法来模拟分配过程。在某些情况下,这个问题可能涉及到贪婪算法或者动态规划算法。