CF1956F.Nene and the Passing Game

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

Nene 正在作为篮球教练训练她的队伍。Nene 的队伍由 nn 名球员组成,编号从 11 到 nn。第 ii 名球员有一个臂展区间 [li,ri][l_i, r_i]。只有当 ∣i−j∣∈[li+lj,ri+rj]|i-j| \in [l_i+l_j, r_i+r_j](其中 ∣x∣|x| 表示 xx 的绝对值)时,两名球员 ii 和 jj(i≠ji \neq j)才能互相传球。

Nene 想要测试这些球员的配合能力。为此,她将举行若干轮考核。

  • 在每一轮中,Nene 会选择一个球员序列 p1,p2,…,pmp_1, p_2, \ldots, p_m,使得对于所有 1≤i<m1 \leq i < m,球员 pip_i 和 pi+1p_{i+1} 能够互相传球。序列的长度 mm 可以由 Nene 自由选择。每名球员可以在序列 p1,p2,…,pmp_1, p_2, \ldots, p_m 中出现多次,也可以一次都不出现。
  • 然后,Nene 会将球传给球员 p1p_1,球员 p1p_1 再传给球员 p2p_2,以此类推……球员 pmp_m 会把球扔出篮球场,球就不能再使用了。

作为教练,Nene 希望每一名球员都至少在一轮考核中出现。由于 Nene 放学后还要约会,她希望你计算完成任务所需的最少考核轮数。

输入格式

每个测试用例包含多组数据。第一行包含测试用例的组数 tt(1≤t≤2⋅1051 \leq t \leq 2 \cdot 10^5)。接下来是每组测试用例的描述。

每组测试用例的第一行包含一个整数 nn(1≤n≤2⋅1061 \leq n \leq 2 \cdot 10^6),表示球员人数。

接下来的 nn 行中,第 ii 行包含两个整数 lil_i 和 rir_i(1≤li≤ri≤n1 \leq l_i \leq r_i \leq n),表示第 ii 名球员的臂展区间。

保证所有测试用例中 nn 的总和不超过 2⋅1062 \cdot 10^6。

输出格式

对于每组测试用例,输出一个整数,表示 Nene 完成任务所需的最少考核轮数。

输入输出样例

  • 输入#1

    5
    2
    1 1
    1 1
    2
    1 1
    2 2
    3
    1 3
    1 3
    1 3
    5
    1 1
    2 2
    1 5
    2 2
    1 1
    6
    1 2
    5 5
    2 3
    2 3
    2 2
    1 2

    输出#1

    2
    2
    2
    1
    3

说明/提示

在前两个测试用例中,Nene 可以举办两轮考核:一轮为 p=[1]p=[1],另一轮为 p=[2]p=[2]。可以证明只举办一轮考核是不够的,因此答案是 22。

在第三个测试用例中,Nene 可以举办两轮考核:一轮为 p=[1,3]p=[1,3],另一轮为 p=[2]p=[2]。球员 11 可以将球传给球员 33,因为 ∣3−1∣=2∈[1+1,3+3]|3-1|=2 \in [1+1,3+3]。可以证明只举办一轮考核是不够的,因此答案是 22。

由 ChatGPT 4.1 翻译

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

首页