P12167 [蓝桥杯 2025 省 C/Python A] 倒水

题目描述

小蓝有 $n$ 个装了水的瓶子,从左到右摆放,第 $i$ 个瓶子里装有 $a_i$ 单位的水。为了美观,小蓝将水循环染成了 $k$ 种颜色,也就是说,第 $i$ 个瓶子和第 $i + k$ 个瓶子里的水的颜色相同。 小蓝发现有的瓶子里的水太少了,因此他规定如果第 $i$ 个瓶子和第 $j$ 个瓶子中的水颜色相同并且满足 $i < j$,即可将任意整数单位的水从第 $i$ 个水瓶倒出,倒入第 $j$ 个水瓶中。小蓝想知道任意次操作后所有瓶子中的水的最小值 $\min\{a_i\}$ 最大可以是多少?

输入格式

输入的第一行包含两个正整数 $n, k$,用一个空格分隔。 第二行包含 $n$ 个正整数 $a_1, a_2, \cdots, a_n$,相邻整数之间使用一个空格分隔。

输出格式

输出一行包含一个整数表示答案。

说明/提示

### 样例说明 其中一种方案: - $a_1$ 往 $a_4$ 倒入 $3$ 单位; - $a_2$ 往 $a_5$ 倒入 $2$ 单位; - $a_3$ 往 $a_6$ 倒入 $1$ 单位; 最终每个瓶子里的水:$5, 3, 4, 5, 4, 4, 4$,最小值为 $3$。 ### 评测用例规模与约定 - 对于 $40\%$ 的评测用例,$1 \leq n, a_i \leq 100$; - 对于所有评测用例,$1 \leq n, a_i \leq 100000$,$1 \leq k \leq n$。