Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
CMI_02_10 - Sortowanie topologiczne |
Pan Jasio właśnie buduje dom. Przymierza się do ustalenia, w jakiej kolejności musi wykonać kolejne etapy budowy domu. Np. wiadomo, że przed ociepleniem budynku należy go najpierw postawić oraz przed wstawieniem okien należy zrobić odpowiednie dziury. Są jednak sytuacje, gdzie nie można określić, którą czynność należy najpierw wykonać. Niektóre czynności można wykonać na dowolnym etapie budowy, więc nie mają one żadnego wpływu na ustalenia pana Jasia.
Twoim zadaniem jest określenie czynności, które należy i w jakiej kolejności wykonać. Jeśli istnieje wiele możliwości wypisz leksykograficznie najmniejszą.
Wejście
W pierwszym wierszu jedna liczba określająca liczbę par czynności.
Każda para czynności to dwie liczby a i b definiujące, że czynność a powinna być wykonana przed czynnością b. Każde z tych liczb są należą do przedziału [1..1000] oraz a ≠ b. W grze biorą udział tylko czynności, których numery pojawiły się na wejściu.
Wyjśćie
Lista czynności w porządku leksykograficznym lub napis NIE jeśli pan Jasio nie ma możliwości wybudowania domu.
Przykład
Wejście: 7 1 2 3 2 3 4 4 6 2 5 5 7 6 7 Wyjście: 1 3 2 4 5 6 7
Dodane przez: | Marcin Kasprowicz |
Data dodania: | 2021-11-15 |
Limit czasu wykonania programu: | 1s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC 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 |