Programozó versenyek

Magas szintű programozási nyelvek 2, 2016. november 8., K18 ZH

2016. november 8. 18:05 – 2016. november 8. 19:45

Hegyek között, völgyek között (C#)

Írjon programot, amely a standard bemenet első sorából beolvas egy n pozitív egész számot, amely a további sorok számát adja meg! A következő n sorban fényképezőgépek által készített természetképek leírásai szerepelnek a következő formában:

fényképezőgép-típus:felvétel

A fényképezőgép-típusok sztringek, amelyek fényképezőgép-típusokat azonosítanak. A felvétel is egy sztring, amely az adott fényképezőgéppel készített képet írja le. A képen hegyek és völgyek láthatók, a hegyeket egy /\ karakterpár jelzi, a völgyeket _ (aláhúzás) karakterek írják le. A felvétel szélességét ennek a sztringnek a hossza adja meg.

A programjának a fényképezőgép-típusokat kell rangsorolnia. Legjobb az a fényképezőgép-típus, amelyikkel a legszélesebb panorámaképet lehet készíteni. Ha több gép is alkalmas azonos szélességű panorámaképek készítésére, akkor közülük azt tekintjük jobbnak, amelynek a felvételén több hegy látható. Ha ez alapján sem tudunk dönteni két fényképezőgép-típus között, akkor őket típusnevük alapján állítsuk lexikografikusan növekvő sorrendbe!

A program írja a standard kimenetre a fenti szempontrendszer alapján rangsorolt fényképezőgép-típusok neveit, soronként egyet-egyet!

Példa bemenet

  1. 4
  2. Panasonic DMC-FZ72:/\__/\/\/\_/\/\_____/\/\
  3. Canon EOS 1300D:/\___/\__/\__/\_/\_/\___
  4. Nikon Coolpix P900:_/\_/\_/\_/\_/\_
  5. Sony Cyber Shot DSC-HX400:__/\_/\___/\_/\_/\___/\_
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. Panasonic DMC-FZ72
  2. Canon EOS 1300D
  3. Sony Cyber Shot DSC-HX400
  4. Nikon Coolpix P900
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01.