.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » traseu1

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
 .campion
traseu1


Timp maxim de execuţie/test:
0.3 secunde
Memorie totală disponibilă/stivă:
16 MB/1 MB

Ovi tocmai şi-a cumpărat maşină şi doreşte să facă o călătorie într-un alt oraş. Pentru că este şofer începător, el îşi planifică să mergă spre oraşul de destinaţie în mai multe zile trecând zilnic prin câte un oraş intermediar. Astfel, în fiecare zi va parcurge drumul direct de la un oraş X la un oraş Y, în Y se va odihni, urmând ca următoarea zi să parcurgă o nouă etapă din traseu în acelaşi mod. Ovi s-a uitat pe hartă, unde identifică N oraşe numerotate de la 1 la N şi află astfel între ce oraşe sunt şosele (bidirecţionale) şi care este lungimea acestor şosele. Nu-l interesează să ajungă la destinaţie parcurgând un traseu de lungime minimă, nici în cât mai puţine zile, ci ca distanţa maximă parcursă zilnic să fie cât mai mică. Deci dacă traseul îl parcurge în k zile, iar distanţele parcurse zilnic sunt d1, d2, ..., dk, notând cu dmax valoarea maximă din acest şir, Ovi doreşte ca valoarea dmax să fie cât mai mică posibil.

Cerinţă

Scrieţi un program prin care să-l ajutaţi pe Ovi ca plecând din oraşul natal să ajungă în oraşul de destinaţie în una sau mai multe etape, iar distanţa dmax să fie minimă.

Date de intrare

Fişierul de intrare traseu1.in conţine pe prima linie numărul natural N reprezentând numărul de oraşe. Pe linia a doua se află numărul natural M reprezentând numărul de şosele bidirecţionale de pe hartă. Pe următoarele M linii se află câte 3 numere naturale separate prin spaţiu X, Y, D cu semnificaţia: există şosea bidirecţională între oraşele X şi Y de lungime D (X şi Y sunt oraşe diferite). Pe ultima linie se găsesc două numere naturale S şi F, unde S este oraşul de plecare, iar F este oraşul destinaţie.

Date de ieşire

Fişierul de ieşire traseu1.out va conţine o singură linie pe care va fi scris un singur număr reprezentând distanţa dmax dintre două oraşe de pe traseu, minimă posibil.

Restricţii

  • 2 <= N <= 500
  • 2 <= M <= 50 000
  • Distanţele dintre oraşe sunt numere naturale cuprinse între 1 şi 10 000
  • Va exista întotdeauna cel puţin un traseu de la oraşul de plecare la destinaţie

Exemplu

traseu1.in traseu1.out Explicaţie

7
9
1 2 30
1 3 20
1 7 100
2 4 70
3 5 50
5 4 10
7 5 60
6 5 40
7 6 40
1 7

50

Traseul optim de la oraşul 1 la 7 care îndeplineşte cerinţele este 1-3-5-6-7, deoarece distanţa maximă dmax pe care este nevoit să o parcurgă într-o zi este 50 (între oraşele 3 şi 5).
Mai există şi alte trasee care nu sunt optime, de exemplu:
1-7 : distanţa dmax este 100
1-2-4-5-7 : distanţa dmax este 70
1-3-5-7 : distanţa dmax este 60

prof. Dan Pracsiu
Grupul Şcolar „Ştefan Procopiu” Vaslui
dpracsiu@yahoo.com
propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la XOR 2010: ordonare, xor1, paltrei, triunghi1, 123
De acelaşi autor: cai, rebus, harta, comun, axa, sir, ocean14, reduceri, div3, patrate6, vot, reziduu, accesibil, predecesor, permutari, scanduri, ordonare, xor1, paltrei, triunghi1, 123, parbit, petrecere, secvbiti, subm, triunghi3, cmmdcsecv, drumuri1, fillmat, secvb, siruri3, acces, segmente, echilibru1, broscute, ksecv, paisprezece, proddiv, perechi2, expeval, maxtri, combcuv, dfs, qtri, blis, maxbin, probleme, divider, eliminare, minm, genab, grafxy, matd3, azeval, matrixdel, speed, maxp, split, binremove, sminus, subsets, tcif, sprime, sir2dif, ecp, arbsum, robotzi, permtr, unudoi, matcnt, ssdj, dominant
Despre graf: gropi, tgv, matrice2, miniasm, picnic, mere, circuit, soldati, arce, conflicte, desen, robot, furtuna, net, cuvinte, excursie, cadere, pioni, reinvent, kreg, flood, croco, johnie, matrice, arthur, kimberley, ro, sol, caravane, bete, honest, police, pcod, zmeu, auto2, grazing, datorii, trafic, sponsori, monede1, apm, bile1, caini, masina1, bomboane, turn1, shgraf, paintball, program1, tgraf, kgb, algola, felinar, joc6, tric, homeless, promo, turism, casute, joc10, prieteni1, traseu, zapezi, litoral, lover, trip, garaj, ziduri, tv, pact, echipe1, vitale, spion, trasee, bcolor, scara2, lant, ab3, soc, team, gard, rsp, graf, mexc, dep, albinuta1, atac2, cabane, drumuri, tj, grade, jungla, lanterna, magic5, coment, urgenta, fazan, lanturi, cfr, site, trmv, graphgame, minuni, telefon, ubergraf, carray, pestera, chei, arbgraf, war, fluviu, drumuri1, entries, ubuntzei, pack, fotbal1, pamant, dag, razboi, benzina2, wg, neconex, asfalt1, kubus2, module, progresii, dfs, prieteni3, megascoala, grafxy, dineu, vot1, biperm, drumuri2, nrgraf, cristal, cartite, copaci3, dragoni, nuclee
surse trimise | ajutor