Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024

2020-2022 2023 Regulations Schedule RODO info Ranking

Problem description


Poczta
(B)
Limit pamięci: 512 MB
Limit czasu: 1.00 s

Zarządzasz kolejką na poczcie i musisz decydować o tym, kto w danym momencie ma podejść do okienka. Jeżeli w danym momencie oczekuje pewna liczba osób, to oczywiście wiesz, że najpierw do okienka powinna podejść osoba, która przyszła jako pierwsza najstarsza oczekująca osoba. Jeżeli jest wiele oczekujących osób w tym samym wieku – wtedy wpuszczana jest pierwsza, która przyszła, a jeżeli przyszły w tym samym momencie, wpuszczana jest ta, która przy okienku ma stać najkrócej. W momencie, kiedy aktualna osoba zostaje obsłużona, to natychmiast zaczyna być obsługiwana następna (o ile ktokolwiek oczekuje na obsłużenie). W jednym momencie przy okienku może być obsługiwana tylko jedna osoba.

Jesteś już doświadczony, także doskonale wiesz, że dzisiaj na pocztę przyjdzie N osób w wieku w1, …, wN, w momentach dnia c1, …, cN, a każde spędzi pewien czas t1, …, tn przy (oczywiście jedynym otwartym) okienku. Napisz program, który znajdzie kolejność, w jakiej klienci będą obsługiwani.

Wejście

W pierwszym wierszu wejścia znajduje się jedna liczba N, oznaczająca liczbę osób, które przyjdą na pocztę. W następnych N wierszach znajduje się opis każdej osoby. Opis i-tej osoby składa się z trzech liczb wi, ci, ti, oznaczające odpowiednio wiek, czas przybycia oraz czas spędzenia w okienku i-tej osoby.

Wyjście

W pierwszym i jedynym wierszu wyjścia należy wypisać N liczb: kolejność, w jakiej osoby będą podchodzić do okienka.

Ograniczenia

1 ≤ N ≤ 200 000, 0 ≤ wi, ti, ci ≤ 109. Możesz założyć, że żadne dwie osoby nie mają jednocześnie tego samego wieku, czasu przybycia i czasu przy okienku.

Podzadania

Podzadanie Warunki Punkty
1 N ≤ 2 000. 20
2 wi = 0 dla każdego 1 ≤ i ≤ N. 25
3 wi ≤ 20 dla każdego 1 ≤ i ≤ N. 30
4 Brak dodatkowych ograniczeń. 25

Przykład

Wejście Wyjście Wyjaśnienie
4
60 2 5
30 3 3
45 2 4
10 1 2
4 1 3 2 

Jako pierwsza na pocztę przyjdzie czwarta osoba, więc jako pierwsza stanie w okienku i będzie tam stała przez 2 minuty. W tym czasie na pocztę przyjdą wszystkie pozostałe osoby. Kiedy czwarta osoba przestanie być obsługiwana, do okienka będą podchodzić pozostałe osoby w kolejności wieku (niezależnie od tego, która była pierwsza).