Programozó versenyek

Programozási nyelvek 2, 2020. november 24., K14 ZH

2020. november 24. 14:05 – 2020. november 24. 15:45

Mesterséges intelligencia

A robotok intelligenciája mára lassacskán eléri az emberek tudásszintjét. Érdekes kérdés lehet, hogy mi történne, ha ezeket az intelligens robotokat egymás ellen versenyeztetnénk. Ebben a feladatban ezt a kérdést modellezzük.

Írjon programot, amely robotok kétszemélyes összecsapásainak az adatait dolgozza fel oly módon, hogy a standard bemenetről állományvégjelig (EOF-ig) egy-egy sorból egy-egy összecsapás adatait olvassa be! A sorok felépítése a következő:

egyik_robot_neve:egyik_robot_pontja;másik_robot_neve:másik_robot_pontja

A robotokat a nevük egyértelműen azonosítja, egy-egy robot több összecsapásban is részt vehet.

A programja határozza meg azt, hogy melyik robot hányszor nyert az összecsapások során, illetve hogy győzelmeit kik ellen érte el! A döntetlen kimenetelű összecsapásokkal nem kell foglalkoznia, arra azonban ügyeljen, hogy a legyőzött ellenfelek nevei minden robotnál csak egyszer szerepeljenek, függetlenül attól, hogy hányszor aratott ellenük győzelmet a robot!

A programja írja a standard kimenetre azoknak a robotoknak a nevét lexikografikusan növekvő sorrendben, akik legalább egy győzelmet arattak valamely másik robot fölött! A robotok neve mellett tüntesse fel a győzelmeik számát, valamint azt, hogy mely más robotokat sikerült legyőzniük! Ha több robot is szerepel a legyőzöttek között, akkor az ő neveiket is lexikografikusan növekvő sorrendben nyomtassa ki! Tegye mindezt a példa kimenetben látható módon!

Példa bemenet

  1. Acelfej:5;Boti:4
  2. Boti:3;Megatron:4
  3. Acelfej:4;Boti:3
  4. Megatron:3;Acelfej:4
  5. Boti:4;Optimusz:3
  6. Megatron:6;Optimusz:2
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. Acelfej (3): Boti, Megatron
  2. Boti (1): Optimusz
  3. Megatron (2): Boti, Optimusz
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.