CF1987D.World is Mine

普及+/提高

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Alice 和 Bob 正在玩一个游戏。最开始有 nn 个蛋糕,第 ii 个蛋糕的美味值为 aia_i。

Alice 和 Bob 轮流吃蛋糕,Alice 先手:

  • 在她的回合,Alice 可以选择并吃掉任意一个剩下的蛋糕,前提是该蛋糕的美味值严格大于她之前吃过的所有蛋糕中的最大美味值。注意,在第一回合,她可以选择任意一个蛋糕。
  • 在他的回合,Bob 可以选择并吃掉任意一个剩下的蛋糕。

当当前玩家无法吃到合适的蛋糕时,游戏结束。设 xx 为 Alice 吃掉的蛋糕数量。Alice 希望最大化 xx,而 Bob 希望最小化 xx。

如果双方都采取最优策略,求 Alice 最终能吃到多少个蛋糕。

输入格式

每组测试数据包含多个测试用例。输入的第一行包含一个整数 tt(1≤t≤5001 \le t \le 500),表示测试用例的数量。接下来是每个测试用例的描述。

每个测试用例的第一行包含一个整数 nn(1≤n≤50001 \le n \le 5000),表示蛋糕的数量。

第二行包含 nn 个整数 a1,a2,…,ana_1, a_2, \ldots, a_n(1≤ai≤n1 \le a_i \le n),表示每个蛋糕的美味值。

保证所有测试用例中 nn 的总和不超过 50005000。

输出格式

对于每个测试用例,输出一个整数,表示在双方都采取最优策略的情况下,Alice 能吃到的蛋糕数量。

输入输出样例

  • 输入#1

    9
    4
    1 4 2 3
    3
    1 1 1
    5
    1 4 2 3 4
    4
    3 4 1 4
    1
    1
    8
    4 3 2 5 6 8 3 4
    7
    6 1 1 3 5 3 1
    11
    6 11 6 8 7 5 3 11 2 3 5
    17
    2 6 5 3 9 1 6 2 5 6 3 2 3 9 6 1 6

    输出#1

    2
    1
    3
    2
    1
    3
    2
    4
    4

说明/提示

在第一个测试用例中,一种可能的操作顺序如下:

  1. Alice 吃掉美味值为 11 的蛋糕。剩下的蛋糕为 [4,2,3][4, 2, 3]。
  2. Bob 吃掉美味值为 22 的蛋糕。剩下的蛋糕为 [4,3][4, 3]。
  3. Alice 吃掉美味值为 33 的蛋糕。剩下的蛋糕为 [4][4]。
  4. Bob 吃掉美味值为 44 的蛋糕。剩下的蛋糕为 [][]。
  5. 没有蛋糕剩下,游戏结束。

在第二个测试用例中,一种可能的操作顺序如下:

  1. Alice 吃掉美味值为 11 的蛋糕。剩下的蛋糕为 [1,1][1, 1]。
  2. Bob 吃掉美味值为 11 的蛋糕。剩下的蛋糕为 [1][1]。
  3. 由于 Alice 已经吃过美味值为 11 的蛋糕,她无法再进行操作,游戏结束。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页