Programozó versenyek

Magas szintű programozási nyelvek 2, 2017. december 19., K8 ZH

2017. december 19. 8:10 – 2017. december 19. 10:00

Költöztetés (C#)

Költöz(tet)éskor minden négyzetcentiméter számít. Hát még a köbcentiméterek és a kilók! Így vannak ezzel a profi költöztetőcégek is, ezért gyakran előfordul, hogy a költöztetés előtt részletes listát kérnek a szállítandó tárgyak méreteiről és arról, hogy hová kell elszállítani az adott tárgyat, hogy optimalizálhassák az erőforrásaik (az emberek és a járművek) kihasználtságát.

A feladata, hogy írjon egy programot, amely a standard bemenetről állományvégjelig (EOF-ig) a szállítandó tárgyak adatait olvassa. Minden szállítandó tárgynál meg van adva a megnevezése, a térfogata, a tömege és a rendeltetési helye (ilyen sorrendben). A megnevezés és a rendeltetési hely egy-egy sztring, a térfogat és a tömeg pedig egy-egy egész szám. Ezeket az adatokat egy-egy pontosvessző karakter választja el egymástól a soron belül.

A programja írja a standard kimenetre a rendeltetési helyek ábécérendjében (lexikografikusan növekvő sorba rendezve), hogy az egyes helyekre miket kell szállítani! Az egyes rendeltetési helyekhez tartozó blokkok első sora tartalmazza a rendeltetési helyet, amelyet egy kettőspont karakter kövessen! A blokk további soraiban a szállítandó tárgyak megnevezései jelenjenek meg a sűrűségük (tömeg/térfogat) szerint csökkenő sorba rendezve, soronként egy-egy! Ha több tárgynak is azonos lenne a sűrűsége, akkor őket a térfogatuk szerint növekvő sorrendben jelenítse meg a kimeneten! Ha kettő vagy több tárgynak azonos lenne a sűrűsége és a térfogata is, akkor őket a megnevezésük szerint ábécérendben (lexikografikusan növekvő sorrendben) sorolja fel!

Példa bemenet

  1. ruhas szekreny;8;80;Budapest
  2. mosogep;2;40;Budapest
  3. puff;2;4;Debrecen
  4. konyvespolc;2;5;Debrecen
  5. faliszekreny;2;4;Debrecen
  6. iroasztal;4;8;Debrecen
  7. allolampa;1;10;Budapest
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. Budapest:
  2. mosogep
  3. allolampa
  4. ruhas szekreny
  5. Debrecen:
  6. konyvespolc
  7. faliszekreny
  8. puff
  9. iroasztal
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.