Programozó versenyek

DEIK Regionális Programozó Csapatverseny, egyetemi/főiskolai kategória, 2012. november 25.

2012. november 25. 11:30 – 2012. november 25. 16:30

Királypóker

A póker az egyik legelterjedtebb kártyajáték, a királypóker pedig az egyik változata. A játékot egy hagyományos, 52 lapos paklival játsszák. Minden lap a 4 szín és 13 figura egyikével rendelkezik. A királypókerben azonban a színek nem számítanak, a figurák pedig a következők: ász (1-es értékű), 2-es, 3-as, 4-es, 5-ös, 6-os, 7-es, 8-as, 9-es, 10-es, bubi (11-es értékű), dáma (12-es értékű) és király (13-as értékű). A játék neve onnan ered, hogy a királypókerben a király a legmagasabb értékű lap. De nem ez az egyetlen különbség a hagyományos póker és a királypóker között: a királypóker játékosainak csak három lapot osztanak. Háromféle leosztás létezik:

  • A szett, amely három azonos értékű lapból áll.
  • A pár, amely két azonos értékű lapot és egy harmadik, pár nélküli lapot tartalmaz.
  • A páratlan, amelyben nincs két azonos értékű lap.

A leosztásokat a következő szabályok alapján rangsoroljuk:

  • Minden szett üt minden párt és minden páratlant.
  • Minden pár üt minden páratlant.
  • Egy magasabb értékű lapokból álló szett üt minden alacsonyabb értékű lapokból álló szettet.
  • Ha két pár párt alkotó lapjai különböző értékűek, akkor a magasabb értékű párt alkotó lapokat tartalmazó pár üti az alacsonyabb értékű párt alkotó lapokat tartalmazó párt.
  • Ha két pár párt alkotó lapjai azonos értékűek, akkor a két leosztás pár nélküli lapjait hasonlítjuk össze; a magasabb értékű pár nélküli lappal rendelkező pár üti az alacsonyabb értékű pár nélküli lapot tartalmazó párt, hacsak a két pár nélküli lap nem azonos értékű, amikor is az eredmény döntetlen.

Egy új szoftverház királypóker játékokat szeretne ajánlani az online játékoldalán, és szüksége van egy olyan szoftverre, amely meghatározza azt a legalacsonyabb értékű szettet vagy párt, amely üt egy megadott királypóker-leosztást. Le tudnád programozni?

A bemenet specifikációja

Minden tesztesetet egy sor ír le, amely három egész számot tartalmaz (A-t, B-t és C-t), amelyek egy leosztásban szereplő lapok értékeit adják meg (1 ≤ ABC ≤ 13).

Az utolsó tesztesetet egy három nullát tartalmazó sor követi.

A kimenet specifikációja

Minden tesztesetre egy sort kell a kimenetre írni. Ha létezik olyan szett vagy pár, amelyik üti a megadott leosztást, akkor a legkisebb értékű ilyen leosztást kell kiírni a lapok értékének nemcsökkenő sorrendben történő megadásával. Ha nincs olyan szett vagy pár, amely ütné a megadott leosztást, akkor a „*” (csillag) karaktert kell kiírni.

Példa bemenet

  1. 1 1 1
  2. 1 1 12
  3. 1 1 13
  4. 1 13 1
  5. 10 13 10
  6. 1 2 2
  7. 13 13 13
  8. 13 12 13
  9. 12 12 12
  10. 3 1 4
  11. 1 5 9
  12. 0 0 0
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. 2 2 2
  2. 1 1 13
  3. 1 2 2
  4. 1 2 2
  5. 1 11 11
  6. 2 2 3
  7. *
  8. 1 1 1
  9. 13 13 13
  10. 1 1 2
  11. 1 1 2
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30.