CF1828B.Permutation Swap

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

You are given an unsorted permutation p1,p2,,pnp_1, p_2, \ldots, p_n . To sort the permutation, you choose a constant kk ( k1k \ge 1 ) and do some operations on the permutation. In one operation, you can choose two integers ii , jj ( 1j<in1 \le j < i \le n ) such that ij=ki - j = k , then swap pip_i and pjp_j .

What is the maximum value of kk that you can choose to sort the given permutation?

A permutation is an array consisting of nn distinct integers from 11 to nn in arbitrary order. For example, [2,3,1,5,4][2, 3, 1, 5, 4] is a permutation, but [1,2,2][1, 2, 2] is not a permutation ( 22 appears twice in the array) and [1,3,4][1, 3, 4] is also not a permutation ( n=3n = 3 but there is 44 in the array).

An unsorted permutation pp is a permutation such that there is at least one position ii that satisfies piip_i \ne i .

输入格式

Each test contains multiple test cases. The first line contains the number of test cases tt ( 1t1041 \le t \le 10^4 ). The description of the test cases follows.

The first line of each test case contains a single integer nn ( 2n1052 \le n \le 10^{5} ) — the length of the permutation pp .

The second line of each test case contains nn distinct integers p1,p2,,pnp_1, p_2, \ldots, p_n ( 1pin1 \le p_i \le n ) — the permutation pp . It is guaranteed that the given numbers form a permutation of length nn and the given permutation is unsorted.

It is guaranteed that the sum of nn over all test cases does not exceed 21052 \cdot 10^{5} .

输出格式

For each test case, output the maximum value of kk that you can choose to sort the given permutation.

We can show that an answer always exists.

输入输出样例

  • 输入#1

    7
    3
    3 1 2
    4
    3 4 1 2
    7
    4 2 6 7 5 3 1
    9
    1 6 7 4 9 2 3 8 5
    6
    1 5 3 4 2 6
    10
    3 10 5 2 9 6 7 8 1 4
    11
    1 11 6 4 8 3 7 5 9 10 2

    输出#1

    1
    2
    3
    4
    3
    2
    3

说明/提示

In the first test case, the maximum value of kk you can choose is 11 . The operations used to sort the permutation are:

  • Swap p2p_2 and p1p_1 ( 21=12 - 1 = 1 ) \rightarrow p=[1,3,2]p = [1, 3, 2]
  • Swap p2p_2 and p3p_3 ( 32=13 - 2 = 1 ) \rightarrow p=[1,2,3]p = [1, 2, 3]

In the second test case, the maximum value of kk you can choose is 22 . The operations used to sort the permutation are:

  • Swap p3p_3 and p1p_1 ( 31=23 - 1 = 2 ) \rightarrow p=[1,4,3,2]p = [1, 4, 3, 2]
  • Swap p4p_4 and p2p_2 ( 42=24 - 2 = 2 ) \rightarrow p=[1,2,3,4]p = [1, 2, 3, 4]
首页