传统题 1000ms 512MiB

选举

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

【题目描述】

在某国的议会选举中,共有 NN 个政党参加角逐,编号为 1,2,,N1,2,\dots,N。本次选举总票数为 KK,目前已统计了部分选票,其中第 ii 个政党已获得 AiA_i 票,剩余 R=Ki=1NAiR = K - \sum_{i=1}^N A_i 张选票尚未统计。

选举规则规定:最终计票结束后,若一个政党的得票数超过它的政党个数 严格小于MM,则该政党当选。注意:可能有多个政党同时满足条件(即同时当选)。

现在,每个政党都想知道:为了确保自己一定能够当选,无论剩余选票如何分配,它至少还需要再获得多少张选票?如果无论如何都无法保证当选,则输出 -1。。

【输入格式】

第一行三个正整数 N,M,KN,M,K,分别代表政党总数、当选门槛参数、总选票数。

第二行 NN 个整数 A1,A2,,ANA_1,A_2,\dots,A_N,分别代表目前已统计的各政党得票数。

【输出格式】

输出一行 NN 个整数,用空格分隔。第 ii 个整数表示政党 ii 为确保当选至少还需要获得的票数,若无法确保当选则输出 -1

【样例 1】

5 2 16
3 1 4 1 5
2 -1 1 -1 0

【样例 1 解释】

目前已统计 1414 张选票,剩余 22 张选票。

  • 政党 11 若再获得 22 张选票即可确保胜出,而再获得 11 张则不足以确保。因此输出 22
  • 政党 22 永远无法(即使再获得 22 张选票)确保胜出,因此输出 1-1
  • 政党 33 若再获得 11 张选票即可确保胜出,而再获得 00 张则不足以确保。因此输出 11
  • 政党 44 永远无法(即使再获得 22 张选票)确保胜出,因此输出 1-1
  • 政党 55 不需要获取一张票即可保证当选

【样例 2】

12 1 570
81 62 17 5 5 86 15 7 79 26 6 28
79 89 111 117 117 74 112 116 80 107 117 106

【数据规模与约定】

对于全部的测试点,保证:

  • 1MN2×1051 \le M \le N \le 2 \times 10^5
  • 1K10121 \le K \le 10^{12}0Ai10120 \le A_i \le 10^{12}
  • i=1NAiK\sum_{i=1}^N A_i \le K

2026CSP-J模拟赛4

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-7-17 14:00
结束于
2026-7-17 16:00
持续时间
2 小时
主持人
参赛人数
7