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

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


Timp maxim de executie/test:
0.1 secunde
Memorie totala disponibila/stiva:
16 MB/1 MB

In Utopia, pe litoral exista doua plaje particulare denumite A si B, între care se poate circula numai cu salupa. Orarul de functionare a salupelor este cunoscut si contine ora de plecare si ora de sosire de pe o plaja pe cealalta. Evident, orice turist care se deplaseaza cu o salupa trebuie sa cumpere un bilet de calatorie, al carui pret poate sa difere de la o salupa la alta.
Proprietarii plajelor au pretentia la o taxa de sedere pe plaja lor, taxa care va fi încasata la anumite ore de la persoanele existente la acea ora pe plaja respectiva. În cazul în care o persoana soseste pe o plaja dupa momentul de încasare, nu plateste pâna la momentul de încasare imediat urmator. Aceste taxe pot fi de valori diferite în functie de ora perceperii lor. În cazul în care o salupa pleaca sau ajunge la un anumit moment pe o plaja si exact în acel moment se percepe taxa de sedere pe acea plaja, atunci se va plati si taxa de sedere.
Tanarul Romeo se afla pe plaja A la ora x, cunoscuta. El are întâlnire cu prietena lui Julieta pe plaja B, la o anumita ora y. El va încerca sa-si planifice "stationarile" pe plaje si "plimbarile" cu salupa astfel încât la ora y sa fie la destinatie, platind taxe de sedere pe plaje si taxe de transport cu salupa care însumate sa fie de valoare minima.

Cerinta

Scrieti un program care sa calculeze suma minima pe care trebuie sa o cheltuiasca Romeo pana la intalnirea cu Julieta.

Date de intrare

Fisierul text litoral.in are urmatoarea structura:
- pe prima linie sunt scrise doua numere: oA si mA reprezentând ora si minutul la care tânarul se afla initial pe plaja A;
- pe a doua linie sunt scrise doua numere: oB si mB reprezentând ora si minutul la care se vor întâlni cei doi tineri pe plaja B;
- pe a treia linie sunt scrise doua numere ntA si ntB reprezentând numarul de taxe percepute pe plaja A, respectiv numarul de taxe percepute pe plaja B între momentul initial si momentul întâlnirii;
- pe urmatoarele ntA linii sunt scrise câte trei numere sub forma: h m c unde h si m reprezinta ora si minutele perceperii taxei pe plaja A, iar c reprezinta valoarea taxei;
- pe urmatoarele ntB linii sunt scrise câte trei numere sub forma: h m c unde h si m reprezinta ora si minutele perceperii taxei pe plaja B, iar c reprezinta valoarea taxei;
- urmatoarea linie contine numarul natural ns reprezentând numarul total de salupe care se deplaseaza între cele doua plaje;
- pe urmatoarele ns linii este descris orarul salupelor folosind câte sase numere scrise sub forma: d hA mA hB mB c. Valoarea d poate fi doar 0 sau 1; daca d este 0, atunci hA si mA reprezinta ora si minutele plecarii salupei din A, iar hB si mB reprezinta ora si minutele sosirii în B; daca d este 1, atunci hA si mA reprezinta ora si minutele sosirii salupei în A, iar hB si mB reprezinta ora si minutele plecarii din B. Valoarea c reprezinta costul biletului de calatorie.
Datele sunt despartite pe linii prin câte un spatiu.

Date de iesire

Fisierul text litoral.out va contine pe prima linie un numar natural care reprezinta suma minima cheltuita de Romeo pana la intalnirea cu Julieta.

Restrictii

  • Ora initiala si ora finala: 0<=oA, oB<=23; 0<=mA, mB<=59
  • Numarul de taxe percepute pe plaja A, respectiv pe plaja B: 0<=ntA, ntB<=100
  • Valoarea oricarei taxe si a biletelor de calatorie c<=150
  • Numarul de salupe ns<=80
  • Datele de intrare se considera corecte si admit întotdeauna solutie.

Exemplu

litoral.in litoral.out
1 0
9 0
3 3
2 0 10
4 0 2
6 0 10
3 0 10
5 0 10
7 0 2
7
0 1 0 2 0 3
0 3 0 4 0 6
0 5 0 6 0 8
0 7 0 8 0 9
1 3 0 2 0 5
1 5 0 4 0 7
1 7 0 6 0 9
20

Interpretarea exemplului

Ora Salupa Plaja initiala Plaja finala Taxa de sedere Cost transport
1h 0m-2h 0m 1 A B - 3
2h 0m-3h 0m 5 B A - 5
3h 0m-5h 0m - A - 2 -
5h 0m-6h 0m 3 A B - 8
6h 0m-9h 0m - B - 2 -
Total:4 Total:16

prof. Dana Lica
C.N. "I.L.Caragiale" Ploiesti

propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De acelaşi autor: compus, taste, arce, balbe, drept, scor, sume3, spair, bitslang, police, tree, reteta2, farfurii, caramele, apm, maraton, masina1, bomboane, soldati1, concurs1, puncte, pipe, camion, imax, dreptc, bal, prefix1, tablite, lanturi, loto, bila, popic, activ, game1, pitag, secv9, divk, taler, bdotcom, oak, ozn1, optim, puncte5, swap, tetris3, monede2, ssk
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, 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, traseu1, 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
Despre drum minim: miniasm, robot, furtuna, excursie, arthur, bete, zmeu, trafic, masina1, bomboane, traseu, lover, trip, scara2, team, gard, pitici1, base3, coach, lanturi, trmv, pestera, fluviu, ubuntzei, razboi, benzina2, kubus2, megascoala, dragoni
surse trimise | ajutor