Documente Academic
Documente Profesional
Documente Cultură
Calatoria Lui Ionut Romana
Calatoria Lui Ionut Romana
Cerint, ă
Ionut, trăies, te ı̂ntr-o t, ară cu n oras, e s, i m drumuri bidirect, ionale, ce fac legătura ı̂ntre cele n oras, e. Definim
distant, a dintre două oras, e x s, i y drept numărul minim de drumuri ce trebuie parcurse pentru a ajunge
de la oras, ul x la oras, ul y, sau −1, ı̂n cazul ı̂n care nu se poate ajunge de la oras, ul x la oras, ul y.
Ionut, locuies, te ı̂n oras, ul 1 s, i vrea să viziteze oras, ul n. Înainte de a-s, i ı̂ncepe călătoria, el vrea să s, tie:
3. Pentru un număr natural k, câte trasee de lungime exact k, care nu trec de două ori prin acelas, i
oras, , există de la oras, ul 1 la oras, ul n, ı̂n ipoteza că oras, ul cont, ine câte un drum ı̂ntre fiecare două
oras, e. Calculat, i rezultatul modulo 109 + 7.
Lungimea unui traseu constă ı̂n numărul de drumuri pe care le cont, ine acel traseu.
Două trasee sunt diferite dacă succesiunea oras, elor prin care va calători Ionut, parcurgând cele două
trasee este diferită.
Date de intrare
Fis, ierul de intrare calatorie.in cont, ine pe prima linie numărul c, reprezentând cerint, a care trebuie să
fie rezolvată (1, 2 sau 3).
Pentru c = 1 s, i c = 2, pe a doua linie se găsesc două numere naturale, n s, i m. Pe fiecare dintre
urmatoarele m linii se găsesc câte două numere x s, i y, cu semnificat, ia că există un drum bidirect, ional de
la oras, ul x la oras, ul y.
Pentru c = 3, pe a doua linie se găsesc două numere naturale, n s, i k.
Restrict, ii s, i precizări
• 2 ≤ n ≤ 2 · 105
• 1 ≤ k ≤ 2 · 105
• Pentru cerint, a 2 se garantează că există cel put, in un traseu de la oras, ul 1 la oras, ul n.
• Pentru cerint, a 2 se garantează că rezultatul este mai mic sau egal cu 109 .
Exemple
calatorie.in calatorie.out
1 3
4 3
1 2
2 3
3 4
1 -1
5 6
1 2
2 3
3 1
2 4
4 1
3 4
2 2
5 5
1 2
1 3
2 4
3 4
4 5
3 2
4 2
Explicat, ii
Pentru primul exemplu, Ionut, poate călători pe următoarele 3 drumuri, ı̂n această ordine: (1, 2), (2, 3) s, i
(3, 4).
În al doilea exemplu, nu se poate ajunge de la oras, ul 1 la oras, ul n = 5.
Pentru al treilea exemplu, cele 2 trasee de distant, ă minimă sunt: (1, 2, 4, 5) s, i (1, 3, 4, 5).
Pentru ultimul exemplu, cele 2 trasee de lungime 2 sunt: (1, 2, 4) s, i (1, 3, 4).