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

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


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

La concertul de Anul Nou de la Viena primele două rânduri sunt rezervate oficialilor. Ambele rânduri sunt formate din acelaşi număr de scaune S. Scaunele sunt numerotate de la 1 la S, de la stânga la dreapta.
Există N persoane oficiale care trebuie să primească invitaţii (să le numerotăm de la 1 la N). Fiecare persoană oficială i (1iN) vine însoţită de un grup; să notăm cu gi numărul de membri din grupul persoanei oficiale i (inclusiv i). Membrii unui grup trebuie să fie plasaţi pe acelaşi rând pe locuri consecutive, sau (în cazul în care numărul de membri din grup este par) membrii grupului pot fi împărţiţi în două jumătăţi şi pot fi plasaţi pe locuri consecutive având aceleaşi numere de pe cele două rânduri.

Cerinţă

Scrieţi un program care să determine numărul minim de scaune S din care trebuie să fie formate primele două rânduri, pentru a putea aranja toţi membrii grupurilor persoanelor oficiale respectând condiţiile din
enunţ.

Date de intrare

Fişierul de intrare viena.in conţine pe prima linie numărul natural N reprezentând numărul de persoane
oficiale. Pe cea de a doua linie se află N numere naturale separate prin spaţii g1 g2 ... gN, unde gi reprezintă
numărul de membri ai grupului persoanei oficiale i (inclusiv i), (1iN).

Date de ieşire

Fişierul de ieşire viena.out va conţine o singură linie pe care va fi scris un singur număr natural: numărul minim de scaune S care trebuie să se afle pe fiecare dintre primele două rânduri pentru a aranja toţi membrii grupurilor respectând condiţiile din enunţ.

Restricţii

1N1000
g1 + g2 + ... + gN100000
Ordinea în care sunt aşezate grupurile nu contează.

Exemple

viena.inviena.outExplicaţii
4 20 5 3 1 15 Grupul 1 va fi împărţit pe două rânduri, ocupând locurile de la 1 la 10. Grupul al doilea va fi plasat pe rândul 1 ocupând locurile 11 ... 15. Grupurile 3 şi 4
vor fi plasate pe rândul al doilea ocupând locurile 11 ... 13, respectiv locul 14. Numărul minim de scaune necesare pe rând este 15.

autor: Prof. Emanuela Cerchez
propunător: Stud. Vlad Manea
FII
vlad.c.manea@gmail.com
Articole recomandate
Probleme recomandate
De la FII Competition 2011: lipsa, reducere, sir9, sablon2, fibgcd, acoperire, razboi, safeu, centrala, benzina2, bradut2, capra, agendatelefonica, cds, micro, wg
De acelaşi autor: celule, scp, vedete, film, ab, supertri, inginer, camp, sl, detinut, simetric, egal, gropi, ruleta, carti, tgv, uscat, afise, dezbateri, bunici, rv, onu, nspecial, secvop, cadou, chimie, reteta, piticot, petrol, checkin, teanc, index, teren, pizza, ecran, drum, text, lbd, aven, spam, pluricex, tren2, gray, pasi, mgo, joc, anagrame, vecini, criptmat, maxim, cutie, party, friends, net, sablon, hd, pc, sir2, aztec, scara, nr, robot2, sah, formule, ed, bilete, hanoig, flood, matrice3, erdos, grup, cd, kfactor, np, cuc, radio, honest, ref, nr01, scor2, convert, auto2, compress, politics, pm, playlist, barbie, firma1, submatrix, ham, pizza1, exam, ants, teatru1, cifre1, bile1, caini, secvreg, pasune, remi, m01, sir23, tren1, joc5, pachete, aedaro, windows, renju, latime, mere1, piloti, peste, pitici, sirag1, stive, turn1, carti1, program1, spioni, kgb, lift, apel, lex, oras, homeless, subsir, dist, harta1, adevar, joc10, bare, zapezi, masina2, perechi1, raft, joc11, joc12, ferma, fni, tunel, lover, pepsi, transport, avion, monkey, premii1, garaj, carti2, tv, pact, fat, cafea, echipe1, secvente, petrom, peg, scara1, lant, ecuatii, stiva, bile4, jungla, rj, poli, text1, compus1, rez, politie, anag, codul, coment, muzeu, seti, basm, timer, secvsir, dp, placa, prod3, bursa, submdisj, sotron1, fazan, secvpar, joker, lego, medalii, cfr, antipatie, figura, links, segm, colorare, brazi, mobil, distsir, guess, greiere, pestera, conferinta, chei, ny, nx, ghinion, sumb, drenaj, telecomanda, grupuri, mahjong, rotund, sport2, cos, monoton, micro, valet, nr0, maxviz, anagramabil, nrpal, lista, dame, consiliu, adprod, arme, deal, prodnr, compar, latin, interviu, vintage, prize, nrdiv, arrows, tdrept, agenda, reziston, vot2, tema, smiley, relatii, ech, scadere, nebuni, castig, expand, wb, prime2, virgule, b210
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, 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, 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
Software recomandat
surse trimise | ajutor