Antrenament ONI · clasa a 10-a · clasa a 10-a
Cel mai scurt traseu (ONI 10)
Cerință
O hartă are n intersecții și m străzi cu dublu sens, fiecare cu o lungime. Afișează, pentru fiecare intersecție, lungimea minimă a unui traseu de la intersecția 1 până la ea (−1 dacă nu se poate ajunge).
Problemă originală de antrenament în stil ONI (etapa națională), clasa a 10-a, nu este subiect oficial.
Date de intrare
Prima linie: n și m. Următoarele m linii: a, b, lungime.
Date de ieșire
n numere separate prin spațiu (long long). Nu afișa mesaje suplimentare.
Restricții
- 1 ≤ n ≤ 50 000
- 0 ≤ m ≤ 100 000
- 1 ≤ lungime ≤ 10^6
- Sunt 20 de teste, fiecare valorează 5 puncte.
1 0
0
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Algoritmul lui Dijkstra cu coadă de priorități (priority_queue / heapq). Rezultatul corect pentru acest exemplu este: 0.
2 1 1 2 996400
0 996400
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Algoritmul lui Dijkstra cu coadă de priorități (priority_queue / heapq). Rezultatul corect pentru acest exemplu este: 0 996400.
7 14 7 3 353220 6 5 190340 6 3 801810 1 4 908803 4 5 2350 7 4 722055 5 2 864857 2 7 706948 3 4 205696 2 1 690281 2 6 29975 6 7 194167 1 6 707121 5 3 361642
0 690281 1105507 899811 897461 707121 901288
Datele exemplului respectă formatul de intrare. Aplicăm ideea: Algoritmul lui Dijkstra cu coadă de priorități (priority_queue / heapq). Rezultatul corect pentru acest exemplu este: 0 690281 1105507 899811 897461 707121 901288.
Probleme similare pe PbInfo
Exersează aceeași tehnică și pe PbInfo — acolo găsești și soluții oficiale.
- #1512 Mars — șmenul lui Mars
- #3844 KSum — SSM cu lungime minimă
- #2921 SumeSecv1 — sume parțiale
- #237 Sume — sume parțiale
- #3659 SumMaxSecv — suma costurilor
- #4205 SecvSumS — secvență de sumă S
- #3941 CountSumS — perechi de sumă S
- #4532 SumOfAll — suma subsecvențelor
- #1879 platou2 — secvență crescătoare
- #1639 Secvente3 — ONI 2013
- #2301 secv — ONI gimnaziu 2016
- #2510 vsecvente — lot juniori
- #1090 Secvente2
- #4423 secv2
- #3163 SecvMaxVal
- #334 secventa1 — clasice
- #50 secvmax — secvența de sumă maximă
- #315 secventa
- #190 secvk — secvențe de lungime k
- #217 platou1 — platouri