#94. [ABC354F] Useless for LIS

    ID: 94 传统题 1000ms 256MiB 尝试: 16 已通过: 4 难度: 9 上传者: 标签>动态规划线性DP数据结构线段树树状数组基础算法贪心二分

[ABC354F] Useless for LIS

题目描述

给你一个长度为 NN 的整数序列 AA 。

对于每个 t=1,2,…,Nt = 1, 2, \dots, N ,判断 AtA_t 是否包含在 AA 的最长递增子序列中。

给你 TT 个测试用例,请逐个求解。

输入格式

第一行输入一个整数 TT 代表测试样例的个数

接下来每个测试样例先输入一个整数 NN 代表数组的元素个数。

紧接着一行输入 NN 个空格隔开的整数代表整数序列 AA

输出格式

每个测试样例先输出一个整数 ansans,代表一共有几个数字可以出现在最长上升子序列中。

然后紧接着一行输出它们的位置空格隔开。

1
5
2 1 4 5 3
4
1 2 3 4
2
6
2 5 3 4 3 4
5
10000 1000 100 1 10
5
1 3 4 5 6
2
4 5

样例 1 解释

其中一个最长的递增子序列是 (2,4,5)(2, 4, 5) ,长度为 33 。另一个最长的递增子序列是 (1,4,5)(1, 4, 5) 。然而,没有一个最长的递增子序列包括 A5A_5 。

因此,打印 1,2,3,41, 2, 3, 4 。

提示

  • 1 ≤ T ≤ 2 × 105 1\ \leq\ T\ \leq\ 2\ \times\ 10^5
  • 1 ≤ N ≤ 2 × 105 1\ \leq\ N\ \leq\ 2\ \times\ 10^5
  • 1 ≤ Ai ≤ 109 1\ \leq\ A_i\ \leq\ 10^9