testament

Time limit: 0.04s Memory limit: 16MB Input: testament.in Output: testament.out

Un bătrânel are mm nepoţi şi o pădure pe care vrea să o împartă în mm părţi, pentru a clarifica situaţia ei prin testament. Pădurea este alcătuită din mnm \cdot n pomi codificaţi prin numerele 1,2,...,mn1, 2, ..., m \cdot n, pentru care se cunosc coordonatele în plan. Pentru a realiza o împărţire cât mai echitabilă, bătrânelul vrea să determine mm suprafeţe disjuncte în formă de poligoane convexe care să conţină fiecare câte nn pomi în interior sau pe frontieră. Suprafetele trebuie să aibă vârfurile în câte un pom din pădure. Codurile pomilor aflaţi pe frontiera fiecărei suprafeţe vor fi scrise în testatment, pentru a nu lăsa loc de ceartă între nepoţi.

Cerință

Să se scrie un program care să determine o modalitate de împărţire a pădurii cu restricţiile precizate anterior.

Date de intrare

Fişierul de intrare testament.in va conţine pe prima linie numerele nn şi mm, iar pe următoarele mnm \leq n linii coordonatele pomilor în ordinea codificării: abscisă ordonată.

Date de ieșire

Fişierul de ieşire testament.out va conţine mm linii, fiecare dintre aceste linii conţinând: kk si qq urmat de kk numere separate prin câte un spaţiu reprezentând codificările pomilor, care sunt vârfurile unei suprafaţe de pădure din testament date în sens trigonometric, urmate de qq numere reprezentand codificările pomilor care sunt în interior sau pe marginea suprafeţei de pământ, exceptând vârfurile, pentru câte un nepot. kk reprezintă numărul de vârfuri a suprafeţei de pădure iar qq reprezintă numărul de pomi din interiorul suprafeţei.

Restricții și precizări

  • 3n1003 \leq n \leq 100
  • 1m1001 \leq m \leq 100
  • Coordonatele pomilor sunt numere întregi cu valoarea absolută <32 000< 32 \ 000.
  • Sensul trigonometric este invers acelor de ceasornic.
  • Două suprafeţe sunt disjuncte dacă interioarele lor au intersecţia egală cu mulţimea vidă şi frontierele lor au intersecţia vidă. Pomii au poziţii disticte. 
  • Dacă există mai multe soluţii se va afişa una dintre ele.

Exemplu

testament.in

4 2
6 1
4 8
2 1
3 9
2 6
6 6
3 20
0 10

testament.out

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

Explicație

Prima suprafaţă de pădure are colţurile în pomii 66, 55, 33, 11, iar cea dea doua în pomii 22, 77, 88.
A doua suprafaţă de pădure conţine în interior pomul 44.

Log in or sign up to be able to send submissions!