Remi - Državno (2015)
DRŽAVNO NATJECANJE 2015. – Prvi dan natjecanja / Srednja škola, II. podskupina (3. i 4. razred) - 3. zadatak
Mirko i Slavko igraju Remi - popularnu kartašku igru za djecu i odrasle. Svaka karta je označena sa:
- rangom - brojem između 1 i 13
- bojom - jednim od slova ‘K’, ‘H’, ‘T’ ili ‘P’.
Oznaka karte je niz od dva ili tri znaka koji se dobije spajanjem ranga i boje.
Njihova inačica igre se igra s dva špila od 52 karte.
Dakle u igri su na raspolaganju točno 104 karte - za svaki rang i boju postoje točno dvije takve karte.
Glavni dio igre je polaganje grupe karata na stol. Položiti se smije samo grupa koju čini
- tri ili više karata istog ranga (takozvani red) ili
- tri ili više karata iste boje te uzastopnih rangova (takozvana skala).
Tako su na primjer (7K, 8K, 9K, 10K) i (5H, 5H, 5T) dvije grupe karata koje se smiju položiti.
Mirko u svakom dijeljenju dobije neki niz karata te ih želi što više položiti.
Naravno, položene karte moraju biti organizirane u grupe prema pravilima igre te jedna karta može biti u najviše jednoj grupi.
Napišite program koji za svako dijeljenje pronalazi jedan način da se položi najveći broj karata.
Ulazni podaci
U prvom redu nalazi se prirodni broj, M (1 ≤ M ≤ 10) - broj dijeljenja.
U svakom od sljedećih M redova nalazi se najprije prirodni broj N (1 ≤ N ≤ 104) - broj karata koji je Mirko dobio te oznake N karata odvojenih s točno jednim razmakom.
Oznaka svake karte je niz od dva ili tri znaka kao u tekstu zadatka.
Izlazni podaci
Potrebno je ispisati M redova. Za svako dijeljenje najprije je potrebno ispisati najveći broj karata K koji Mirko može položiti, a zatim u istom redu i oznake K karata koje Mirko polaže.
Karte trebaju biti organizirane u grupe, a znak ‘|’ (vertikalna crta, ASCII 124) odvaja grupe.
Svaka grupa karata mora biti red ili skala. Grupe i karte unutar grupe mogu biti poredane proizvoljnim redoslijedom.
Svi elementi u liniji (broj K, oznake karata, vertikalna crta) moraju biti odvojeni s po jednim razmakom.
Napomena: Rješenje ne mora biti jedinstveno.
Primjeri test podataka
Ulaz
4
8 5T 7K 3H 8K 9K 5H 5H 10K
7 5T 7K 3H 8K 9K 6H 2P
4 1K 2P 3P 4K
11 10K 11K 10H 10K 9K 2T 7H 9P 8H 10T 8P
Izlaz
7 7K 8K 9K 10K | 5H 5H 5T
3 7K 8K 9K
0
6 9K 10K 11K | 10K 10H 10T
Comments