SLAGALICA | 프로그래밍의 벗 PivotOJ
PivotOJ

SLAGALICA

시간 제한: 1000ms메모리 제한: 2048MB출처: CHC 2025 Junior Croatian Olympiad in InformaticsBOJ 34576

문제

„Slavko, već dugo na natjecanju nije bila neka slagalica koju djeca trebaju složiti.“

„Da da, Mirko. Zadnja je bila na državnom prije ohoho vremena. Prošla su već tri tjedna.“

„Baš imam jednu dobru, svojevrsni omaž na legendarnu Obratnu kocku. Dobiješ tablicu s NN redaka i MM stupaca, a u svakom polju je upisan broj ili 00 ili 11.“

„Uhuhu već zvuči sočno. Koje su operacije i što želimo postići?“

„Jedina moguća operacija je da zamjeniš vrijednosti dvaju polja koja su susjedna u toj tablici. Susjedna se naravno misli u četiri smjera, gore, dolje, lijevo i desno. Treba u što manje operacija postići sljedeća dva svojstva:

  1. za svaki xx od 11 do N1N-1 i za svaki yy od 11 do MM vrijedi p[x][y]>=p[x+1][y]p[x][y] >= p[x+1][y]
  2. za svaki xx od 11 do NN i za svaki yy od 11 do M1M-1 vrijedi p[x][y]>=p[x][y+1]p[x][y] >= p[x][y+1]

Naravno, natjecatelje ćemo pitati u koliko najmanje operacija mogu postići da vrijede ta dva svojstva.“

„Genijalno! Sviđa mi se! Taman još jedan zadatak točno po mom ukusu - onaj kojeg ja ne znam riješiti, a oni sigurno znaju!“

입력

U prvom su retku prirodni brojevi NN i MM (1 ≤ N, M ≤ 20, 4 ≤ N \times M ≤ 20), broj redaka i broj stupaca tablice.

U sljedećih NN redaka nalaze se po MM brojeva koji su ili 00 ili 11.

출력

Ispiši najmanji mogući broj operacija tako da tražena svojstva budu zadovoljena.

힌트

Opis drugog probnog primjera: Jedno od mogućih rješenja je da je prva operacija (1,2)(1,2) <-> (1,3)(1,3), druga (3,2)(3, 2) <-> (3,3)(3, 3), treća (3,1)(3, 1) <-> (2,1)(2, 1) i četvrta (3,2)(3, 2) <-> (3,1)(3, 1).

예제

예제 1

입력
1 4
0 1 0 1
출력
3

예제 2

입력
3 3
1 0 1
0 1 0
1 0 1
출력
4

예제 3

입력
2 3
0 0 0
0 0 1
출력
3
코드를 제출하려면 로그인하세요.