#ABC314G. 护身符

护身符

护身符

题目描述

洞穴中有 NN 只怪物,分别是怪物 11、怪物 22\ldots、怪物 NN。每只怪物都有一个正整数攻击力和一个介于 11MM(含)之间的整数类型。 具体地,对于 i=1,2,,Ni = 1, 2, \ldots, N,怪物 ii 的攻击力和类型分别为 AiA_iBiB_i

高桥君将以 HH 点生命值以及 MM 种护身符中的一部分:护身符 11、护身符 22\ldots、护身符 MM,前往这个洞穴冒险。

在冒险中,高桥君按照顺序对 i=1,2,,Ni = 1, 2, \ldots, N 执行以下步骤(只要他的生命值没有降到 00 或以下)。

  • 如果高桥君没有携带护身符 BiB_i,怪物 ii 会攻击他,使他的生命值减少 AiA_i
  • 然后,
    • 如果他的生命值大于 00,他击败怪物 ii
    • 否则,他未能击败怪物 ii 而死亡,冒险结束。

对每个 K=0,1,,MK = 0, 1, \ldots, M 独立地解决以下问题:

当高桥君选择携带 MM 种护身符中的 KK 种去冒险时,求他最多能击败的怪物数量。

数据范围保证对于每个 i=1,2,,Mi = 1, 2, \ldots, M,至少存在一只类型为 ii 的怪物。

输入格式

输入按以下格式从标准输入给出:

NN MM HH
A1A_1 B1B_1
A2A_2 B2B_2
\vdots
ANA_N BNB_N

输出格式

对于每个 i=0,1,2,,Mi = 0, 1, 2, \ldots, M,设 XiX_iK=iK = i 时高桥君最多能击败的怪物数量。 按以下格式用空格分隔输出 X0,X1,,XMX_0, X_1, \ldots, X_M

X0X_0 X1X_1 \ldots XMX_M

样例

7 3 7
3 2
1 1
4 2
1 2
5 1
9 3
2 3
2 5 7 7

考虑 K=1K = 1 的情况。此时,高桥君可以携带护身符 22,最多能击败 55 只怪物。 冒险过程如下。

  • i=1i = 1,因为他有护身符 22,避免了怪物 11 的攻击。然后,他击败怪物 11
  • i=2i = 2,因为他没有护身符 11,受到怪物 22 的攻击,生命值变为 66。然后,他击败怪物 22
  • i=3i = 3,因为他有护身符 22,避免了怪物 33 的攻击。然后,他击败怪物 33
  • i=4i = 4,因为他有护身符 22,避免了怪物 44 的攻击。然后,他击败怪物 44
  • i=5i = 5,因为他没有护身符 11,受到怪物 55 的攻击,生命值变为 11。然后,他击败怪物 55
  • i=6i = 6,因为他没有护身符 33,受到怪物 66 的攻击,生命值变为 8-8。他未能击败怪物 66 而死亡,冒险结束。

同样地,当 K=0K=0 时,他可以击败 22 只怪物;当 K=2K=2 时,通过携带护身符 2233,他可以击败全部 77 只怪物;当 K=3K=3 时,通过携带护身符 112233,他可以击败全部 77 只怪物。

15 5 400
29 5
27 4
79 1
27 2
30 3
4 1
89 2
88 3
75 5
3 1
39 4
12 1
62 4
38 2
49 1
8 12 15 15 15 15

数据范围

  • 1MN3×1051 \le M \le N \le 3 \times 10^5
  • 1H1091 \le H \le 10^9
  • 1Ai1091 \le A_i \le 10^9
  • 1BiM1 \le B_i \le M
  • 对于每个 1iM1 \le i \le M,存在 1jN1 \le j \le N 使得 Bj=iB_j = i
  • 输入均为整数。
难度 省选/NOI-
通过率
尝试 0
已通过 0
ID
3036
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签