Tidying Up
题号:NC244809
时间限制:C/C++/Rust/Pascal 4秒,其他语言8秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

小明的鞋柜划成了 N * M 的格子,每个格子里恰好有一只鞋。

但现在他的鞋柜一团糟,鞋子并不是成对放在一起。

小明想要整理下他的鞋子,使得每一对鞋都放到相邻的位置。问最少需要改变多少只鞋的位置。

给定 N * M 的矩阵,描述的是鞋柜的现状,矩阵上不同的数代表了不同的鞋,保证每种数恰好出现两次。

输入描述:

第一行两个整数

接下来n行每行m个整数,分别表示每个格子中鞋子的类型。

保证是偶数,并且1中每个数字都在中出现恰好2次。

输出描述:

一个整数,表示答案。
示例1

输入

复制
2 3
1 1 2
2 3 3

输出

复制
2
示例2

输入

复制
3 4
1 3 2 6
2 1 5 6
4 4 5 3

输出

复制
4