프로그램 명: coci_police
제한시간: 1 초

Librarian Jurica has N shelves in his library, and each shelf can contain M books. Jurica is a good librarian so he decided to make an inventory in the library and, if it’s necessary, return the books that aren’t in their place to their right place. He moves the books in the following way:

Jurica has been having back pains ever since he had to move all the volumes of the printed edition of Wikipedia from the first to the second floor so now he wants to put all the books in place with as little lifting as possible because his back is hurting. What is the minimal number of lifting he needs? SAMPLE TESTS

입력

The first line of input contains the integers N and M (1 <= N <= 1 000, 1 <= M <= 1 000). Each of the following N lines contains M integers, the i-th line describing the current state of the i-th shelf. Number 0 denotes an empty place on the shelf, and a number different than 0 denotes that there is a book in that place denoted with that number. All books are denoted with different numbers from 1 to K, where K is the total number of books on the shelves. After that, an additional N lines follow, each containing M integers, the i-th line describing the wanted state of the i-th shelf. In the initial and final state of the shelves, the same books will appear.

출력

The first and only line of output must contain the required minimal number of lifting or -1 if it is impossible to arrange the books in the aforementioned way.

입출력 예

입력

2 4
1 0 2 0
3 5 4 0
2 1 0 0
3 0 4 5

출력

2 

입력

3 3
1 2 3
4 5 6
7 8 0
4 2 3
6 5 1
0 7 8

출력

4

입력

2 2
1 2
3 4
2 3
4 1

출력

-1

Clarification of the first example: Jurica will move book 1 one place to the right, then lift book 2 and move
it over to the first place of the first shelf. He lifts book 5 and places it on the fourth place on the second shelf.
출처:2013-2014 contest7 6/6

[질/답] [제출 현황] [푼 후(0)]
[ 채 점 ] [홈으로]  [뒤 로]