Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
SMWP_116 - Ranking Gildii |
Jaś postanowił zagrać w jedną z popularnych gier MMORPG. Po osiągnięciu pewnego poziomu swojej postaci chciałby zobaczyć, który jest w rankingu serwera wraz z jego paczką znajomych. Niestety, jak szybko się zorientował, baza danych graczy nie była posortowana. Jaś posmutniał i postanowił zgłosić swoje zażalenie do wydawcy gry, który jest twoim szefem. Pewnie domyślasz się już jakie będzie twoje zadanie. Tak, musisz napisać program, który posortuje daną bazę danych według następujących kryteriów:
1) Gildie(kolejno) według malejącej liczby punktów, malejącej liczby graczy, alfabetycznie względem nazwy gildii.
2) Gracze w obrębie danej gildii(kolejno) według malejącego poziomu, malejącego współczynnika K/D, alfabetycznie względem nazwy gracza.
Wejście
W pierwszej linii wejścia znajduje się dokładnie jedna liczba T(1≤T≤105) określająca liczbę gildii występujących w danej bazie danych. Każda gildia składa się z N+2 linii danych: w pierwszej linii danych gildyjnych znajduje się nazwa gildii złożona z wielkich liter alfabetu angielskiego nie dłuższa niż 50 znaków oraz po spacji liczba P(1≤P≤105) określająca ilość punktów danej gildii. Następnie w drugiej linii dokładnie jedna liczba N(1≤N≤1000) reprezentująca ilość członków w danej gildii. Dalej w N liniach kolejno nazwa gracza składająca się z wielkich liter alfabetu angielskiego nie dłuższa niż 30 znaków, poziom danej postaci będący liczbą całkowitą nie większą niż 1000 oraz współczynnik K/D będący rzeczywistą dodatnią liczbą nie większą niż 1000. Pomiędzy poszczególnymi gildiami występuje pusty wiersz. Zakłada się, że każda nazwa gildii jest unikatowa.
Wyjście
Posortowane dane według podanych kryteriów. Wypisujemy tylko nazwy (gildii i graczy). Ponadto po każdej nazwie gildii dwukropek „:” oraz pusty wiersz oddzielający różne gildie.
Przykład
Wejście: 3 MOCARZE 45 3 JASIUNIO 97 4.23 MISTRZ 98 2.24 RYCERZSWIATLA 97 5.12 ELITARNI 45 3 OKRUTNYNADZORCA 97 2.58 STRAZNIKCHAOSU 97 2.58 ZEMSTAOGNIA 97 5.24 INFINITELEGEND 120 5 MAGNATAUR 140 2.58 ARATHIA 140 3.24 RZEZIMIOT 138 2.59 VARIAN 112 6.34 TEANIA 140 5.32
Wyjście: INIFINITELEGEND: TEANIA ARATHIA MAGNATAUR RZEZIMIOT VARIAN ELITARNI: ZEMSTAOGNIA OKRUTNYNADZORCA STRAZNIKCHAOSU MOCARZE: MISTRZ RYCERZSWIATLA JASIUNIO
Dodane przez: | Bartosz Rychcik |
Data dodania: | 2016-05-25 |
Limit czasu wykonania programu: | 1s-1.600s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC ASM64 MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET |
Pochodzenie: | Szkolne Mistrzostwa W Programowaniu |