Miasta

Limit pamięci: 32 MB

Wzdłuż rzeki znajduje się miast. Pomiędzy każdą parą sąsiednich miast wybudowana jest droga, niestety nie zawsze dwukierunkowa, dlatego nie zawsze da się dojechać z każdego miasta do wszystkich innych. Znając, które drogi są wybudowane, chcielibyśmy wiedzieć dla każdego miasta, do ilu innych miast da się z niego dojechać.

Wejście

Pierwszy wiersz standardowego wejścia zawiera jedną liczbę całkowitą (), oznaczającą liczbę miast.

W kolejnym wierszu znajduje się liczb całkowitych (), gdzie oznacza połączenie pomiędzy miastem -tym, a -wszym. Jeśli:

  • , to z miasta -tego biegnie jednokierunkowa droga do miasta -wszego,
  • , to z miasta -wszego biegnie jednokierunkowa droga do miasta -tego,
  • , to miasta -te i -wsze połączone są drogą dwukierunkową.

W testach wartych co najmniej punktów zachodzi dodatkowy warunek .

Wyjście

W pierwszym i jedynym wierszu wyjścia powinno znajdować się liczb całkowitych , gdzie oznacza liczbę miast, do których da się dojechać z miasta -tego.

Przykład

Dla danych wejściowych:

5
0 2 0 1

poprawną odpowiedzią jest:

3 2 2 0 1 

Autor zadania: Jacek Tomasiewicz.