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

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


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

La un concurs de tir, ţinta este alcătuită din n cercuri concentrice, numerotate din exterior către interior de la 1 la n. Cercurile delimitează pe ţintă n zone circulare (o zonă între cercul 1 şi cercul 2, a doua zonă între cercul 2 şi cercul 3, ş.a.m.d, o zonă între cercul n-1 şi cercul n şi a n-a zonă interiorul cercului n).
Fiecare zonă are ataşată o valoare strict pozitivă, reprezentând numărul de puncte pe care le poate primi un concurent în cazul în care va lovi această zonă.

Cerinţă

Să se determine numărul minim de lovituri pe care trebuie să le execute un concurent pentru a obţine exact k puncte.

Date de intrare

Fişierul de intrare este tir1.in are următoarea structură:
– pe prima linie este scris numărul de cercuri (valoarea n);
– pe a doua linie este scris numărul de puncte ce urmează a fi obţinute de concurent (valoarea k);
– pe a treia linie sunt scrise cele n valori ataşate zonelor, despărţite prin câte un spaţiu.

Date de ieşire

Fişierul de ieşire este tir1.out va conţine pe prima linie numărul minim de lovituri necesar pentru a obţine k puncte, dacă problema are soluţie sau cifra 0 dacă problema nu are soluţie. Dacă problema are soluţie, pe a doua linie sunt scrise valorile asociate zonelor în care a lovit trăgătorul, pentru a obţine cele k puncte, despărţite prin câte un spaţiu.

Restricţii

5 <= n <= 50
k <= 1000

Numerele care reprezintă punctajele zonelor circulare au valori întregi cuprinse între 1 şi 1000 şi nu sunt neapărat în ordine crescătoare.
Soluţia nu este în mod necesar unică.

Exemple

tir1.intir1.outExplicaţii
5 23 2 3 5 6 8 4 2 5 8 8


Ţinta este formată din 5 cercuri concentrice, care determină 5 zone având valorile 2, 3, 5, 6 şi 8.
Pentru a obţine 23 de puncte, numărul minim de lovituri necesar este 4. Loviturile pot fi efectuate în mai multe moduri. O soluţie este de a trage un foc în zona de valoare 2, un foc în zona de valoare 5 şi 2 focuri în zona de valoare 8.

propunător: Prof. Marinel Şerban
Liceul de Informatică “Grigore Moisil”
marinel_serban@yahoo.com
Probleme recomandate
De la OMI Iaşi 2004: banda1, comoara1, exponent
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, cabane, piramida1, mosia, cuvinte1, gaina, materom, sortari, turnuri, trans, 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
Despre sortare: harta, index, sort, concurs, baby, patrate2, repeat, turist, bacan, toys, scor2, chimie2, politics, submat, scoici, ham, jokes, trecere, multiplu, paralel, tvshow, sirag1, tabara, munte, sport, puncte1, sume1, schi, granita, tren3, sant1, volei1, poze, maroco, dreptc, dist1, control, mosia, popas, reactivi, siruri1, coach, anag, matrice4, sume2, urgenta, basm, vot, balcon, joc14, cerc, k1, segm, calorii, ordonare, greutati, arctir, macheta, poligon4, centrala, robot4, lcdr, maxviz, sdmin, qtri, arme, flori1, parc1, mijloc, bile6, proiecte, patru, drept2, subsecvente, cursa1, eoliene, vintage, dreapta, riglef, rebus1, rascoala, zimeria, praslea, aperm, unudoi, gropi1, piscina, restaurare, cabana, culori3
surse trimise | ajutor