Atenție! Aceasta este o versiune veche a paginii., scrisă la 2024-03-05 14:33:58.000.
Revizia anterioară   Revizia următoare  

Fișierul intrare/ieșire venus1.in, venus1.out Sursă ONI 2019 clasa a 7-a
Autor Emanuela Cerchez Adăugată de avatar francu Cristian Frâncu francu
Timp de execuție pe test 0.25 sec Limită de memorie 16384 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip fullstea de rating de tip fullstea de rating de tip fullstea de rating de tip full
open book Poți vedea testele pentru această problemă accesând atașamentele .

Venus1 (baraj gimnaziu)

Notă: aceasta este problema venus cu granularitate de secunde în loc de ore. Astfel limitele se măresc.

Casa de Modă Venus a decis să se modernizeze și, începând cu 1 ianuarie 2020 ora 00:00, l-a angajat pe robotul Vasile. Vasile poate executa orice comandă în exact T secunde, indiferent de complexitatea acesteia (mai exact, dacă Vasile începe să lucreze la comandă în momentul x, la momentul x + T secunde comanda va fi gata de predare). Foarte încrezătoare în calitățile robotului Vasile, Casa de Modă Venus a lansat o campanie publicitară cu sloganul “Dacă am întârziat, primești produsul comandat gratis!”. Campania și-a atins scopul, ca urmare Casa de Modă a primit deja N comenzi pentru întreg anul 2020. Pentru fiecare comandă sunt specificate valoarea acesteia, precum și data și ora până la care produsul comandat trebuie să fie gata de predare. Dacă Vasile predă produsul exact la data și ora specificată în comandă (sau înainte) el încasează valoarea comenzii. Dacă nu, el tot trebuie să execute comanda respectivă, dar nu va primi suma reprezentând valoarea ei.

Deși lucrează fără nicio pauză, Vasile estimează că este posibil să nu poată preda la timp toate comenzile, dar își planifică lucrul, astfel încât pierderea să fie minimă (adică suma valorilor comenzilor care nu vor fi predate la timp să fie cât mai mică). Numim planificare optimală succesiunea în care Vasile trebuie să execute cele N comenzi, astfel încât pierderea să fie minimă.

Cerință

Scrieți un program care, cunoscând informațiile referitoare la cele N comenzi, determină pierderea minimă, precum și o planificare optimală.

Date de intrare

Fișierul de intrare venus1.in conține pe prima linie numărul natural N, reprezentând numărul de comenzi și numărul natural T, reprezentând numărul de ore necesare lui Vasile pentru a executa o comandă. Pe următoarele N linii se află informațiile despre comenzi, câte o comandă pe o linie, sub forma:

V zi luna ora minut secunda

unde V este valoarea comenzii, zi este ziua în care trebuie predată comanda (un număr natural cuprins între 1 și numărul de zile ale lunii), luna este denumirea lunii, ora este un număr natural cuprins între 0 și 23, iar minut și secunda sunt numere cuprinse între 0 și 59. Valorile scrise pe aceeași linie sunt separate prin câte un spațiu. Comenzile se consideră numerotate de la 1 la N în ordinea din fișierul de intrare.

Date de ieșire

Fișierul de ieșire venus1.out va conține pe prima linie numărul natural pmin, reprezentând pierderea minimă. Pe a doua linie vor fi scrise N numere naturale distincte cuprinse între 1 și N, separate prin câte un spațiu, reprezentând o planificare optimală.

Restricții

  • 1 ≤ N ≤ 200 000
  • 1 ≤ T ≤ 15 000
  • 1 ≤ V ≤ 10 000
  • Numele lunilor vor fi scrise cu litere mici.
  • Anul 2020 este an bisect, adică luna februarie are 29 de zile.
  • Dacă există mai multe planificări optimale, se va accepta orice soluție corectă.
  • Se acordă 2p pentru fiecare test pentru determinarea valorii pmin. Punctajul integral de 5p pentru fiecare test se acordă pentru rezolvarea ambelor cerințe (pmin și o planificare optimală).

Exemplu

venus1.in venus1.out Explicație
4 25
90 10 ianuarie 20
50 2 ianuarie 8
20 4 ianuarie 3
70 2 ianuarie 9
50
4 1 3 2
Începând cu 1 ianuarie ora 0, Vasile execută comanda 4 și termină
pe 2 ianuarie la ora 1.00.
Execută apoi comanda 1 pe care o termină pe 3 ianuarie la ora 2.00.
Execută apoi comanda 3 pe care o termină pe 4 ianuarie la ora 3.00.
Execută apoi comanda 2 pe care o termină pe 5 ianuarie la ora 4.00,
ceea ce înseamnă că a depășit termenul de predare, deci pierde
valoarea ei (50).
Există și alte planificări optimale posibile. De exemplu, 4 3 1 2.

Trebuie să te autentifici pentru a trimite soluții. Click aici

Indicii de rezolvare

Arată 5 categorii