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

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


Timp maxim de execuţie / test:
0.5s
Memorie totala disponibilă / stivă:
16MB / 1MB

În depozitul unei companii de construcţii se află N blocuri de piatră, de culoare albă sau neagră. Ele sunt aşezate în ordinea 1, 2, ..., N, de la intrarea în depozit către interior.
Blocurile de piatră trebuie să fie transportate pe un şantier de construcţii, în ordinea în care ele sunt depozitate, iar pentru aceasta va trebui închiriat un camion de la o companie de transport. Aceasta deţine Q tipuri de camioane. Camionul de tipul i (1 <= i <= Q) poate transporta maxim Ki blocuri de piatră la un moment dat şi pentru un transport se percepe taxa Ti.
Compania de transport este de parere că, pentru a-şi păstra clientela, trebuie să impună anumite standarde, indiferent de cât de absurde ar fi, deci impune condiţia ca toate blocurile de piatră plasate în camion la un transport să aibă aceeaşi culoare. Aşadar, pentru a fi transportate toate blocurile pe şantier, compania de construcţii va alege un camion de un anumit tip, iar camionul va efectua unul sau mai multe transporturi.
Pentru a micşora suma totală plătită, compania de construcţii are posibilitatea de a schimba culoarea oricărui bloc de piatră (din alb în negru sau din negru în alb); pentru fiecare bloc i (1 <= i <= N) se cunoaşte suma Si ce trebuie plătită de a-i schimba culoarea.

Cerinţă

Pentru fiecare dintre cele Q tipuri de camioane deţinute de compania de transport, determinaţi suma minimă pe care o va plăti compania de construcţii pentru a transporta toate cele N blocuri pe şantier.

Date de intrare

Fişierul de intrare trans.in conţine pe prima linie numărul întreg N, reprezentând numărul de blocuri de piatră din depozit. Pe fiecare dintre următoarele N linii se află informaţii referitoare la câte un bloc de piatra. Pe a i-a dintre aceste N linii se găsesc două numere întregi separate printr-un spaţiu: Ci Si, reprezentând culoarea celui de-al i-lea bloc (Ci este 0 pentru alb şi 1 pentru negru) şi respectiv suma ce trebuie plătită pentru a-i schimba culoarea (dacă este necesar). Pe următoarea linie se află numărul natural Q, reprezentând numărul de tipuri de camioane deţinute de compania de transport. Pe fiecare dintre următoarele Q linii se află informaţii referitoare la câte un camion. Pe cea de a i-a dintre aceste Q linii sunt scrise două numere naturale separate printr-un spaţiu Ki Ti, reprezentând numărul maxim de blocuri ce pot fi transportate simultan de către un camion de tipul i şi respectiv taxa ce trebuie plătită pentru fiecare transport efectuat.

Date de ieşire

Fişierul de ieşire trans.out va conţine Q linii. Pe cea de a i-a dintre aceste linii va fi afişată suma totală minimă plătită de compania de construcţii pentru a transporta toate cele N blocuri de piatră, în cazul în care ar închiria un camion de tipul i.

Restricţii

1 <= N <= 16000
• 1 <= Si <= 10000
• 1 <= Q <= 100
• 1 <= Ki <= N
• 1 <= Ti <= 100000

• Cel putin 40% dintre teste vor avea Q <= 10 şi Ki <= min(N, 100)

Exemple

trans.intrans.out
4 0 2 1 3 0 10 1 2 3 4 1000 4 1 2 5 1005 4 14

autor: Mugurel Ionuţ Andreica
propunător: Prof. Emanuela Cerchez
Liceul de Informatică ″Grigore Moisil″
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la ONI 2004: cuvinte1, gaina, materom, puncte3, rez, sortari, base3, coach, color, magic5, patrate6, turnuri, invsort, peri, politie, sea, poligon3, sir7, poligon2, logic, coduri, snipers, sablon1, submdisj, v, jetoane, prodmax, printesa, palindrom, reziston
De acelaşi autor: autobuze, bile, complex, balaur, vmem, kreg, ro, jobs, senzori, echipe, agitatie, center, algebra, tgraf, bcast, promo, asmax, sediu, granita, string, poligon1, csir, lsort, zoo, bombo, ab3, soc, rsp, tcast, tj, lanterna, base3, color, ic, xp, v2d, ppcover, carray, asfalt1, module, gxor
Despre programare dinamică: vedete, fbr, tgv, zeratul, rv, comun, retea, circuit, sumdif, copaci, drum, text, palind, joc, vikingi, rafturi, balaur, plimbare, party, pc, pioni, seif, iepuri, numere3, perm, ture, bilete, prop, ro, reduceri, cuburi, invest, cutie2, stalpi, nr2, judete, strict, auto2, tree, jobs, leaves, pstring, program, datorii, senzori, farfurii, joc1, barbie, ambigram, rlcs, cub1, bio, chimie1, otilia, pasune, remi, sir23, tren1, joc5, pachete, echipe, comb, agitatie, ivv, peste, pitici, pipe, shgraf, tabara1, stop, randuri, zidar, log, sant, produs, subsir, cover, bcast, emax, dist, mesaj1, imax, avere, asmax, raft, suma2, joc12, fni, nr4, join, transport, masina3, lsort, microvirus, fat, cafea, echipe1, anticip, bsir, diamant, petrom, evantai, spion, acolor, evo, bombo, lacusta, lant, team, pitici1, numere8, dep, stiva, subgeom, pviz, tir1, cabane, piramida1, mosia, cuvinte1, gaina, materom, sortari, turnuri, politie, codul, dansatori, nkbiti, kperms, treegame, siruri2, 123, jucarii, bradut, joc15, expozitie, text3, ic, echilibru, distsir, kmax, stalpi1, gaz, triunghi2, v2d, cuiburi, mine, orientare, activ, secvbiti, kcons, pokemon, ubergraf, left, acerc, autostrazi, kdist, select, cazare, fluviu, telecomanda, parcela, pion, subs, suma4, sirmax, bdotcom, viena, sablon2, telecab, ikebana, radare, hacker, obstacole, robotel, centrala, verigi, cds, wg, minusk, radioactiv, enigma, jb, efect, maxviz, ripstick, progresii, maxtri, combcuv, blis, subsiruri, mijloc, probleme, unuzero, palindrom1, minerale, speed, zmax, spider, cntgcd, interclasare, bus, pariuri, riglef, fractii2, fall, arbsum, conuri, arbvalmax, procente, metrou
surse trimise | ajutor