여러분에게 격자가 주어집니다. 이때 이 격자에서 행 열의 칸을 로 표시합니다. 격자의 각 칸에는 또는 의 숫자가 적혀 있습니다.
이때, 에서 상하좌우로 인접한 칸으로 이동하는 것만을 반복하여 으로 이동하는 방법 중 이 적힌 칸만 지나가는 방법이 없는 경우, 격자가 막혀 있다고 합니다.
여러분은 다음 연산을 가능한 한 적은 횟수로 사용하여 격자를 막혀 있는 상태로 만들어야 합니다.
격자를 막혀 있는 상태로 만들기 위해 필요한 연산의 최소 횟수를 구하는 프로그램을 작성해 주세요.
첫 번째 줄에 정수 이 주어집니다.
두 번째 줄에는 격자의 첫 번째 행에 적힌 개의 정수가 공백으로 구분되어 주어집니다. 다시 말해, 그중 번째 정수는 에 적힌 정수와 같습니다.
세 번째 줄에는 격자의 두 번째 행에 적힌 개의 정수가 공백으로 구분되어 주어집니다. 다시 말해, 그중 번째 정수는 에 적힌 정수와 같습니다.
한 줄에 격자를 막혀 있는 상태로 만들기 위해 필요한 연산의 최소 횟수를 출력하세요.
| 번호 | 배점 | 제한 |
|---|---|---|
| 1 | 5 | |
| 2 | 12 | 모든 에 대하여, 와 에는 같은 정수가 적혀 있습니다. |
| 3 | 62 | 주어진 격자는 막혀 있는 상태가 아닙니다. |
| 4 | 21 | 추가 제약 조건이 없습니다. |
5 1 0 1 1 1 1 1 1 0 1
1
5 1 0 0 1 1 1 1 1 0 1
0