CF1982F.Sorting Problem Again
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
已知一个序列,给定 q 次修改。对于初始序列和每次修改后的序列,你需要做到:
找到长度最小的连续的子串,使得如果这个子串按升序排序,整个序列也就满足单调不降。输出这个子串的起始位置 l,r;若此时序列已经满足单调不降,认为 l,r 均为 −1。
注意,对这个子串的“升序排序”只是一个假想出的操作,并不会改变原序列。
输入格式
本题有多组数据。
第一行输入一个正整数 T(1≤T≤10),表示测试数据的组数。对于每组数据:
第一行输入序列长度 n(1≤n≤5⋅105)。
第二行输入 n 个整数 ai,即给定的序列(0≤∣ai∣≤109)。
第三行输入修改操作的个数 q(0≤q≤5⋅105)。
接下来 q 行,每行输入两个整数 p 和 v(1≤p≤n 且 0≤∣v∣≤109),表示 ap←v。
保证 ∑n,∑q≤5⋅105。
输出格式
对于每组测试数据,输出 q+1 行。
每行输出两个整数 l,r,含义见题面。
输入输出样例
输入#1
2 5 2 2 3 4 5 3 2 1 4 1 1 1 5 1 2 3 4 5 9 1 4 2 3 5 2 3 1 1 1 5 1 4 1 3 1 2 1
输出#1
-1 -1 1 2 1 4 3 4 -1 -1 1 3 1 3 1 5 1 5 2 5 2 5 2 5 2 5 -1 -1
说明/提示
对于第一个样例:
- 一开始,序列 a 已经满足单调不降:[2,2,3,4,5]。
- 第一次修改后,序列 a 长这样:[2,1,3,4,5]。
- 第二次修改后,序列 a 长这样:[2,1,3,1,5]。
- 第三次修改后,序列 a 长这样:[1,1,3,1,5]。
标红的部分即为题目所求。
输入解题思路,AI测评打分。不知道怎么写?