CF1294E.Obtain a Permutation
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given a rectangular matrix of size n×m consisting of integers from 1 to 2⋅105 .
In one move, you can:
- choose any element of the matrix and change its value to any integer between 1 and n⋅m , inclusive;
- take any column and shift it one cell up cyclically (see the example of such cyclic shift below).
A cyclic shift is an operation such that you choose some j ( 1≤j≤m ) and set a1,j:=a2,j,a2,j:=a3,j,…,an,j:=a1,j simultaneously.
Example of cyclic shift of the first column You want to perform the minimum number of moves to make this matrix look like this:
In other words, the goal is to obtain the matrix, where a1,1=1,a1,2=2,…,a1,m=m,a2,1=m+1,a2,2=m+2,…,an,m=n⋅m (i.e. ai,j=(i−1)⋅m+j ) with the minimum number of moves performed.
输入格式
The first line of the input contains two integers n and m ( 1≤n,m≤2⋅105,n⋅m≤2⋅105 ) — the size of the matrix.
The next n lines contain m integers each. The number at the line i and position j is ai,j ( 1≤ai,j≤2⋅105 ).
输出格式
Print one integer — the minimum number of moves required to obtain the matrix, where a1,1=1,a1,2=2,…,a1,m=m,a2,1=m+1,a2,2=m+2,…,an,m=n⋅m ( ai,j=(i−1)m+j ).
输入输出样例
输入#1
3 3 3 2 1 1 2 3 4 5 6
输出#1
6
输入#2
4 3 1 2 3 4 5 6 7 8 9 10 11 12
输出#2
0
输入#3
3 4 1 6 3 4 5 10 7 8 9 2 11 12
输出#3
2
说明/提示
In the first example, you can set a1,1:=7,a1,2:=8 and a1,3:=9 then shift the first, the second and the third columns cyclically, so the answer is 6 . It can be shown that you cannot achieve a better answer.
In the second example, the matrix is already good so the answer is 0 .
In the third example, it is enough to shift the second column cyclically twice to obtain a good matrix, so the answer is 2 .