题目描述(已经简化了。。)
N张纸牌,编号 1−N(牌的顺序不一定是按照编号顺序排列)。需要将一段连续的纸牌进行颠倒,旋转180°(将连续纸牌的第一张与最后一张交换位置,第二张与倒数第二张交换位置...以此类推)。
但是希望出现的固定点越多越好,固定点即纸牌的编号与位置相对应(编号为 x 的纸牌刚好排在第 x 个位置)
输入
第一行一个正整数纸牌数N。
第二行 N个数,为纸牌起始的编号顺序。
输出
输出两个正整数 A
和 B
,表示将号码 A
到号码 B
之间的所有纸牌进行颠倒得到的固定点最多,如果有多种情况均满足条件,输出翻转纸牌最少的一种,如果翻转数目相同,输出 A
最小的情况。
样例输入
4
3 2 1 4
样例输出
3 1
提示
将 3,2,1
旋转后得到 1,2,3
,此时固定的数目最多,有 4
个。
样例输入2
2
1 2
样例输出2
1 1
数据范围
对于30%的数据,1⩽N⩽500。 对于60%的数据,1⩽N⩽5000。 对于100%的数据,1⩽N⩽500000。
求助
这道题暴力复杂度N^2,不知道怎么才能通过。。。。