AT_agc052_d.[AGC052D] Equal LIS

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

给定一个 11 到 NN 的整数的排列 P1, P2, …, PNP_1,\ P_2,\ \dots,\ P_N。请判断是否可以将其分成两个子序列,使得这两个子序列的最长上升子序列的长度相等。

形式化地说,目标是找到满足以下所有条件的两个整数序列 a, ba,\ b:

  • a, ba,\ b 都是 PP 的子序列。
  • 每个整数 i=1,2,⋯ ,Ni=1,2,\cdots,N 恰好只在 aa 或 bb 中出现一次。
  • (aa 的最长上升子序列的长度)==(bb 的最长上升子序列的长度)。

请判断目标是否可以达成。

有 TT 组测试数据,请分别作答。

输入格式

输入从标准输入读入。输入的第 11 行为:

TT

接下来有 TT 组测试数据,每组数据格式如下:

NN P1P_1 P2P_2 …… PNP_N

输出格式

对于每组测试数据,如果可以将给定排列分成两个最长上升子序列长度相等的子序列,则输出 YES,否则输出 NO。每组测试输出占一行。判题器对大小写不敏感。

输入输出样例

  • 输入#1

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

    输出#1

    NO
    YES
    NO
    YES
    NO

说明/提示

数据范围

  • 1≤T≤2×1051\leq T\leq 2\times 10^5
  • 1≤N≤2×1051\leq N\leq 2\times 10^5
  • P1, P2, …, PNP_1,\ P_2,\ \dots,\ P_N 是 11 到 NN 的一个排列。
  • 所有测试数据中 NN 的总和不超过 2×1052\times 10^5。

样例解释 1

将 [1, 3, 5, 2, 4][1,\ 3,\ 5,\ 2,\ 4] 分为 [1, 5][1,\ 5] 和 [3, 2, 4][3,\ 2,\ 4],两者的最长上升子序列长度均为 22。对于 [2, 3, 4, 5, 6, 1][2,\ 3,\ 4,\ 5,\ 6,\ 1],无法分成两个最长上升子序列长度相等的子序列。

由 ChatGPT 4.1 翻译

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

首页