Come Back Quickly
Στη Δημοκρατία του AtCoder, υπάρχουν πόλεις που αριθμούνται από το
έως το
και
δρόμοι που αριθμούνται από το
έως το
.
Ο δρόμος
είναι μονόδρομος από την πόλη
προς την πόλη
και χρειάζονται
λεπτά για να τον διασχίστουμε.
Είναι πιθανό,
, και μπορεί να υπάρχουν πολλοί δρόμοι που να συνδέουν το ίδιο ζεύγος πόλεων.
Ο Takahashi σκέφτεται να κάνει μια βόλτα στη χώρα. Θα ονομάζουμε έναν περίπατο έγκυρο(valid) όταν περνάει από έναν ή περισσότερους δρόμους και επιστρέφει στην πόλη από την οποία ξεκινάει. Για κάθε πόλη, προσδιορίστε αν υπάρχει έγκυρος περίπατος που ξεκινά από την πόλη αυτή. Επιπλέον, αν η απάντηση είναι θετική, βρείτε τον ελάχιστο χρόνο που απαιτείται για έναν τέτοιο περίπατο.
Περιορισμοί
- Όλες οι τιμές στην είσοδο θα είναι ακέραιοι αριθμοί.
- Time Limit:
sec.
- Memory Limit:
MB
Είσοδος
Η είσοδος θα δίνεται από την τυπική είσοδο και θα έχει την ακόλουθη μορφή:
N M
A1 B1 C1
A2 B2 C2
A3 B3 C3
⋮
AM BM CM
Έξοδος
Εκτυπώστε γραμμές.
Η
-οστή γραμμή
πρέπει να περιέχει τα εξής:
- εάν υπάρχει έγκυρος περίπατος που ξεκινά από την πόλη
, τον ελάχιστο χρόνο που απαιτείται για έναν τέτοιο περίπατο,
- διαφορετικά,
.
Παραδείγματα
1ο
input
4 4
1 2 5
2 3 10
3 1 15
4 3 20
output
30
30
30
-1
Επεξήγηση πρώτου παραδείγματος:
Μέσω των δρόμων ,
,
, οι πόλεις
,
,
σχηματίζουν έναν δακτύλιο που χρειάζεται
λεπτά για να διασχιστεί.
Από την πόλη
, μπορούμε να πάμε στις πόλεις
,
,
, αλλά μετά δεν μπορούμε να επιστρέψουμε στην πόλη
.
2ο
input
4 6
1 2 5
1 3 10
2 4 5
3 4 10
4 1 10
1 1 10
output
10
20
30
20
Επεξήγηση δεύτερου παραδείγματος:
Μπορεί να υπάρχει δρόμος τέτοιος που .
Εδώ, μπορούμε να χρησιμοποιήσουμε τον δρόμο
για να αναχωρήσουμε από την πόλη
και να επιστρέψουμε στην πόλη αυτή.
3ο
input
4 7
1 2 10
2 3 30
1 4 15
3 4 25
3 4 20
4 3 20
4 3 30
output
-1
-1
40
40
Επεξήγηση τρίτου παραδείγματος:
Προσέξτε ότι μπορεί να υπάρχουν πολλοί δρόμοι που να συνδέουν το ίδιο ζεύγος πόλεων.
Comments