SP4154 IZBORI - IZBORI

题目描述

当前正值选举,$V$ 名选民参与投票,每张选票支持 $N$ 个政党中的一个。有 $M$ 个议会席位将被分配给政党代表。 选票向议会席位的转换采用 D'Hondt 方法,并设置 5% 的投票门槛。具体规则如下:假设政党的编号为 1 到 $N$,它们依次获得了 $V_1, V_2, \ldots, V_N$ 张选票。根据以下步骤分配议会席位: 1. 去除掉票数占总票数 $V$ 少于 5% 的政党。 2. 议会刚开始是空的,也就是各个政党分配到的议席数均为零。 3. 对于每个政党 $P$,计算商 $Q_P = \frac{V_P}{S_P + 1}$,其中 $V_P$ 表示政党 $P$ 获得的票数,$S_P$ 是已经分配给政党 $P$ 的议席数。 4. 拥有最大商 $Q_P$ 的政党获得一个议席。如果有多个政党拥有相同的最大商,则编号较小的政党优先获得该席位。 5. 重复执行步骤 3 和 4,直到议会席位分配完毕。 目前仅有部分选票已经被统计,但已知各个政党目前各自获得的票数。请编写一个程序,计算出在所有可能的选举结果中,每个政党最多和最少可获得的议席数。

输入格式

第一行输入包含三个整数 $V, N, M$($1 \leq V \leq 10,000,000$,$1 \leq N \leq 100$,$1 \leq M \leq 200$),分别表示选票总数、政党数量和议会席位数。 第二行包含 $N$ 个整数,表示各政党目前已获得的选票数。这些数的总和不会超过 $V$。

输出格式

输出的第一行包含 $N$ 个整数,用空格隔开,表示各政党最多可以获得的议席数。 输出的第二行包含 $N$ 个整数,用空格隔开,表示各政党最少可以获得的议席数。 **本翻译由 AI 自动生成**