该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
这道题是 B 题的共轭题目!
给你一个长度为 N 的排列 P=(P1,P2,…,PN) ,该排列由 (1,2,3,…,N) 组成.
对于一个长度为 N 排列 Q 来说,定义 Q 的姊妹排列 Qˉ 是执行下面操作刚好一次之后能产生的新排列中 字典序 最小的排列.
- 选择一个二元组 (l,r) 满足 1≤l≤r≤N ,然后翻转 (Ql,Ql+1,…,Qr−1,Qr), 换句话说,把排列 Q=(Q1,Q2,…,QN) 替换成 $\bar{Q} = (Q_1,\dots, Q_{l-1},Q_r, Q_{r-1}, \dots , Q_{l+1}, Q_{l},Q_{r+1}, \dots,Q_N)$
对于 P 来说,可能存在多个二元组 (l,r),使得操作后都有 Pˉ,你要输出 字典序 最小的二元组.
形式化的讲,当两个二元组 l 不同时,l 更小的字典序小,相同时,r 更小的字典序小.
给你 T 组样例,请你分别求解每一个.
注意本题时空限制
Constraints
- 1≤T
- 1≤N≤1.5×107
- P 是 (1,2,…,N) 的排列
- N 的和不超过 1.5×107
- 所有输入均为整数
通过标准输入输入数据,满足以下格式:
Tcase1case2..caseT
每一组测试用例满足以下格式:
NP1 P2 P3 … PN
Output
输出共 T 行,对于第 i 行,你要输出第 i 组测试用例的答案.
对于每一个测试用例,你要输出 2 个数字,表示答案二元组 (li,ri).
Samples
2
3
1 3 2
1
1
2 3
1 1