[BOJ 7256] Torto pjaustymas

View as PDF

Submit solution

Points: 3
Time limit: 1.0s
Memory limit: 1G

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

Artūro gimtadieniui draugai iškepė stačiakampį tortą, papuoštą K žvakučių – tiek, kiek Artūrui sukanka metų. Kadangi tortas išmargintas languotu raštu, galime laikyti jį M × N formos stačiakampiu. Kai kuriuose langeliuose yra lygiai viena žvakutė, o kituose žvakutės nėra.</p>

Draugai skyrė Artūrui užduotį – pagal pateiktas taisykles atpjauti gabalą torto. Taisyklės tokios:

  • Pirmu horizontaliu arba vertikaliu pjūviu, einančiu per langelių kraštus, tortas padalinamas į du stačiakampius gabalus. Gauti gabalai turi būti vienodo dydžio ir turėti po lygiai žvakučių.
  • Vieną iš gabalų Artūras atideda į šalį, o likusį pjausto toliau pagal tas pačias taisykles.
  • Kai lieka gabalas, kurio toliau pjauti nebeįmanoma, jei tas gabalas turi lygiai vieną žvakutę, jis atitenka Artūrui. Jei ne, Artūras torto negauna.

Pavyzdžiui, toks 4×8 tortas vertikaliu pjūviu gali būti padalintas į du 4×4 gabalus, turinčius po dvi žvakutes. Pirmas pjūvis negali būti horizontalus, nes pjaunant per vidurį viršutinis gabalas turės tris žvakutes, o apatinis – tik vieną.

Dešiniojo gabalo toliau pjaustyti negalima, ir jis turi dvi žvakutes. Jį pasilikęs Artūras torto negautų. Kairįjį gabalą galima pjauti tiek horizontaliai, tiek vertikaliai.

Pjaunant abiem būdais, gauti gabalai turi po vieną žvakutę, todėl bet kuris iš jų gali atitekti Artūrui.

Taigi šiame pavyzdyje Artūrui gali atitekti vienas iš keturių skirtingų gabalų.

Suskaičiuokite, kiek skirtingų gabalų gali atitekti Artūrui. Gabalai laikomi skirtingais, jei jie užima skirtingą poziciją torte.

입력 형식

Pirmoje eilutėje pateikiami trys sveikieji skaičiai: torto aukštis M, plotis N ir žvakučių skaičius K.</p>

Kitose K eilučių pateikiamos langelių su žvakutėmis koordinates. Pirmoji koordinatė yra vertikalioji (numeruojama nuo 0 iki M − 1 iš viršaus į apačią), o antroji – horizontalioji (nuo 0 iki N − 1 iš kairės į dešinę).

Langeliai nesikartoja.

출력 형식

Išveskite vieną skaičių, nurodantį, kiek skirtingų gabalų gali atitekti Artūrui.

예제 입력 1

4 8 4
0 0
2 2
0 6
0 7

예제 출력 1

4

예제 입력 2

4 4 16
0 0
0 1
0 2
0 3
1 0
1 1
1 2
1 3
2 0
2 1
2 2
2 3
3 0
3 1
3 2
3 3

예제 출력 2

16

예제 입력 3

3 3 1
1 1

예제 출력 3

1

예제 입력 4

3 3 2
0 0
2 2

예제 출력 4

0

Comments

There are no comments at the moment.