决斗|CSP-S 2024 第二轮(复赛)真题

1 秒 / 测试点 · 512 MiB

[CSP-S 2024] 决斗

题目描述

今天是小 Q 的生日,他得到了 $n$ 张卡牌作为礼物。这些卡牌属于火爆的“决斗怪兽”,其中,第 $i$ 张卡代表一只攻击力为 $r_i$,防御力也为 $r_i$ 的怪兽。

一场游戏分为若干回合。每回合,小 Q 会选择某只怪兽 $i$ 以及另一只怪兽 $j(i \neq j)$,并让怪兽 $i$ 向怪兽 $j$ 发起攻击。此时,若怪兽 $i$ 的攻击力小于等于怪兽 $j$ 的防御力,则无事发生;否则,怪兽 $j$ 的防御被打破,怪兽 $j$ 退出游戏不再参与到剩下的游戏中。一只怪兽在整场游戏中至多只能发起一次攻击。当未退出游戏的怪兽都已发起过攻击时,游戏结束。

小 Q 希望决定一组攻击顺序,使得在游戏结束时,未退出游戏的怪兽数量尽可能少。

输入格式

输入的第一行包含一个正整数 $n$,表示卡牌的个数。

输入的第二行包含 $n$ 个正整数,其中第 $i$ 个正整数表示第 $i$ 个怪兽的攻击力及防御力 $r_i$。

输出格式

输出一行包含一个整数表示游戏结束时未退出游戏的怪兽数量的最小值。

样例 1

5
1 2 3 1 2
2

样例 2

10
136 136 136 2417 136 136 2417 136 136 136
8

说明 / 提示

【样例 1 解释】

其中一种最优方案为:第一回合让第 $2$ 只怪兽向第 $1$ 只怪兽发起攻击,第二回合让第 $5$ 只怪兽向第 $4$ 只怪兽发起攻击,第三回合让第 $3$ 只怪兽向第 $5$ 只怪兽发起攻击。此时没有退出游戏的怪兽都进行过攻击,游戏结束。可以证明没有更优的攻击顺序。

【样例 3】

见选手目录下的 duel/duel3.in 与 duel/duel3.ans。

该样例满足 $\forall 1 \leq i \leq n, r_i \leq 2$。

【样例 4】

见选手目录下的 duel/duel4.in 与 duel/duel4.ans。

【数据范围】

对于所有测试数据,保证:$1 \leq n \leq 10^5$,$1 \leq r_i \leq 10^5$。

测试点$n$$r_i$特殊性质
$1\sim 4$$\leq 10$$\leq 10^5$无特殊性质
$5\sim 10$$\leq 10^5$$\leq 2$^
$11\sim 15$$\leq 30$$\leq 10^5$特殊性质 A
$16\sim 20$$\leq 10^5$^无特殊性质

特殊性质 A:保证每个 $r_i$ 在可能的值域中独立均匀随机生成。

本卷题目

  1. 决斗
  2. 超速检测
  3. 染色
  4. 擂台游戏

题目可直接阅读。页面加载后可编写 C++ 代码、运行样例并提交在线评测。

正在加载试卷…

意见反馈

无需登录也能反馈。管理员的回复可在“我的反馈”中查看。