Marcin Kubica |
Tłumaczenie |
Wiejski listonosz musi dostarczać pocztę wszystkim mieszkańcom okolicy, którzy zamieszkują w wioskach i przy drogach łączących wioski.
Musisz pomóc listonoszowi wytyczyć trasę, która pozwoli mu przejechać wzdłuż każdej drogi i odwiedzić każdą wioskę w okolicy przynajmniej raz. Tak się szczęśliwie składa, że w rozważanych przykładach taka trasa zawsze istnieje. Jednak wytyczone trasy mogą się różnić jakością, tzn. listonosz może otrzymywać różną zapłatę za swą pracę w zależności od wybranej trasy (jak się za chwilę przekonamy, to nie zysk listonosza jest najważniejszy, a zysk jego firmy, czyli poczty). Mieszkańcy każdej wioski chcieliby, by listonosz docierał do nich jak najwcześniej. Każda wioska zawarła więc z pocztą następującą umowę: jeżeli i-ta wioska jest odwiedzana przez listonosza jako k-ta w kolejności (tzn. listonosz odwiedził k-1 różnych wiosek, zanim po raz pierwszy dotarł do wioski i) oraz , to wioska płaci poczcie w(i)-k euro. Jeśli jednak k>w(i), to wówczas poczta płaci wiosce k-w(i) euro. Ponadto poczta płaci listonoszowi jedno euro za każdy przejazd między dwiema kolejnymi wioskami na jego trasie.
W rozważanej okolicy jest n wiosek, które oznaczamy liczbami naturalnymi od 1 do n. Poczta znajduje się w wiosce oznaczonej numerem 1, a więc trasa listonosza musi rozpoczynać się w tej wiosce. W każdej wiosce zbiega się 2, 4 lub 8 dróg. Pomiędzy dwiema wioskami może istnieć kilka różnych dróg; droga może także powracać do tej samej wioski, z której wyszła.
6 7 1 7 4 10 20 5 2 4 1 5 2 1 4 5 3 6 1 6 1 3imgpos1.eps
6 7 1 7 4 10 20 5 2 4 1 5 2 1 4 5 3 6 1 6 1 3poprawną odpowiedzią jest plik wyjściowy pos.out
7 1 5 4 2 1 6 3 1