Polish version    English version  
  OI books


 News
 About Olympic
 History of OI
 OI books
Publications in English
XVII OI 2009/2010
XVI OI 2008/2009
XV OI 2007/2008
XIII OI 2005/2006
XII OI 2004/2005
XI OI 2003/2004
X OI 2003/2003
IX OI 2001/2002
VIII OI 2000/2001
VII OI 1999/2000
VI OI 1998/1999
V OI 1997/1998
IV OI 1996/1997
III OI 1995/1996
Where to buy?
Order
PS and PDF files
 National team
 Olympic camps
 Photo gallery
 Links
 SIO
 MAIN
This document is not available in English version.

III Obóz im. A. Kreczmara 2002

Zadanie: e
Autor: Tomasz Malesiński
E: Hetmany

dzień czwarty 9 sierpnia 2002
Plik źródłowy: e.??? (np. pas, c, cpp)
Plik wejściowy: e.in
Plik wyjściowy: e.out

Jak wiadomo hetman w szachach atakuje figury w ośmiu kierunkach (góra, dół, lewo, prawo i cztery kierunki ukośne) i nie może przeskakiwać przez zajęte pola, więc atakuje tylko pierwszą figurę w każdym kierunku. Dana jest szachownica, na której pewne pola są już zajęte przez inne figury. Należy tak poustawiać pewną liczbę hetmanów na wolnych polach, aby liczba par wzajemnie atakujących się hetmanów była największa. Bierzemy pod uwagę pary nieuporządkowane, tzn. pary różniące się tylko kolejnością uważamy za identyczne.

Zadanie

Napisz program, który:

  • wczyta z pliku e.in opis szachownicy i liczbę hetmanów,
  • obliczy maksymalną liczbę par wzajemnie atakujących się hetmanów,
  • zapisze wynik w pliku e.out.

Wejście

W pierwszym wierszu pliku e.in znajdują się cztery liczby całkowite pooddzielane pojedynczymi spacjami: w, h, n, m (3 <= w,h <= 7, 2 <= n <= wh-m, n <= 7, 0 <= m <= wh-2), oznaczające odpowiednio szerokość i wysokość szachownicy, liczbę hetmanów do ustawienia i liczbę zajętych pól. W następnych m wierszach są po dwie liczby całkowite xi i yi, 1 <= xi <= w, 1 <= yi <= h. Są to współrzędne (pozioma i pionowa) i-tego zajętego pola.

Wyjście

W pierwszym i jedynym wierszu pliku e.out powinna znaleźć się jedna liczba całkowita - maksymalna liczba par wzajemnie atakujących się hetmanów.

Przykład

Dla pliku wejściowego e.in:

4 5 5 2
2 2
2 5

poprawną odpowiedzią jest plik wyjściowy e.out:

8



Print friendly version