[SMWP_108] Metro

0 Flares Twitter 0 Facebook 0 0 Flares ×

Link do zadania:
http://www.spoj.com/SMWP/problems/SMWP_108/

Opis problemu:
W zadaniu stajemy się na moment odpowiedzialni za porządek panujący na stacji metra. Musimy sprawdzać każdą nową osobę i umieszczać ją na odpowiednim miejscu w kolejce oczekujących na pociąg metra. Można uznać, że to trochę niesprawiedliwe, aby sortować ludzi według ich hierarchii w państwie, jednakże nie po to dziś tutaj jesteśmy. My musimy rozwiązać problem algorytmiczny, a mianowicie wykonać taki program, który wyręczy nas w liczeniu tych wszystkich ludzi i sprawdzaniu ich priorytetów.

Rozwiązanie:
Jedną z podpowiedzi jest tutaj słowo kolejka. Jak widać interesuje nas tylko ilość elementów i jeden z nich ten aktualnie największy. Możemy wszystkie priorytety umieszczać w kolejce priorytetowej, a następnie w zależności od zapytania wypisywać kolejka.top() lub kolejka.size(). Jedyne na co musimy uważać, to aby nie wydać polecenia top() przy pustej kolejce, wówczas wypisujemy 0 co widnieje w treści zadania.

Print Friendly

Dodaj komentarz

Wymagane pola są oznaczone *.