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

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


Timp maxim de execuţie/test:
0.3 secunde
Memorie totală disponibilă/stivă:
128 MB/64 MB

Se consideră un arbore cu n noduri numerotate de la 1 la n. Se stie că rădăcina arborelui este nodul 1. Fiecare nod i are asociat un număr natural nenul vi.

Cerinţă

Să se determine suma maximă care se poate obtine alegând în mod convenabil o submultime de noduri, astfel încât dacă este ales un nod i, în submultime nu poate fi nici nodul tată al lui i, nici eventualii fii ai lui i.

Date de intrare

Fişierul de intrare arbsum.in conţine pe prima linie numărul n. Pe a doua linie, separate prin câte un spatiu, se află numerele naturale t1,t2,...,tn, în care ti reprezintă nodul tată al nodului i. Pentru că 1 este rădăcina arborelui, atunci întotdeauna t1=0. Pe a treia linie, separate prin câte un spatiu, se află numerele naturale v1,v2,...,vn, unde vi este valoarea asociată nodului i.

Date de ieşire

Fişierul de ieşire arbsum.out va conţine pe prima linie un singur număr natural reprezentând suma maximă posibilă.

Restricţii

  • 3 <= n <= 100 000
  • 1 <= vi <= 1000
  • Pentru 50% din teste, n <= 1000

Exemplu

arbsum.in arbsum.out Explicaţii
5
0 1 1 3 3
3 4 4 5 3
12

Arborele are 5 noduri. Nodurile 2 şi 3 au ca nod tată pe 1, iar nodurile 4 şi 5 au ca tată pe 3. Nodul 1 are asociată valoarea 3, nodurile 2 şi 3 au asociată valoarea 4, nodul 4 are asociată valoarea 5, iar nodul 5 are valoarea 3 asociată.
Obţinem suma maximă 12 dacă se aleg nodurile 2, 4, 5: v2+v4+v5=4+5+3=12

prof. Dan Pracsiu
Liceul "Stefan Procopiu" Vaslui
dpracsiu@yahoo.com
propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la XOR 2015: sprime, sir2dif, punctul, aperm, ecp, robotzi, permtr, unudoi
De acelaşi autor: cai, rebus, harta, comun, axa, sir, ocean14, reduceri, div3, patrate6, vot, reziduu, accesibil, predecesor, permutari, scanduri, ordonare, xor1, paltrei, triunghi1, 123, traseu1, parbit, petrecere, secvbiti, subm, triunghi3, cmmdcsecv, drumuri1, fillmat, secvb, siruri3, acces, segmente, echilibru1, broscute, ksecv, paisprezece, proddiv, perechi2, expeval, maxtri, combcuv, dfs, qtri, blis, maxbin, probleme, divider, eliminare, minm, genab, grafxy, matd3, azeval, matrixdel, speed, maxp, split, binremove, sminus, subsets, tcif, sprime, sir2dif, ecp, robotzi, permtr, unudoi, matcnt, ssdj, dominant
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, 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, conuri, arbvalmax, procente, metrou
Despre arbori: bonuri, tgv, barfa, votare, arce, balaur, trains, bile2, vmem, plopi, caravane, mese, strict, tree, sub, kinder, firma1, albinuta, rlcs, masina, omizi, concurs1, latime, piloti, barca1, arbnr, sirag1, pikachu, arb, logn, maxq, arbore, bcast, mesaj1, traseu, asmax, salvare, tramvai1, omida, sediu, string, tv, izo, zoo, ratina, vitale, camion1, arbfind, cezar1, tcast, dep, curent, spp, frunze, sea2, culori, color, urgenta, nori, treegame, antipatie, scanduri, minuni, arb1, activ, regat, kdtree, autostrazi, carray, trenuri1, arbgraf, war, mess, secvnumber, subs, posta, radare, arbore1, hacker, lista, codarb, subsecvente, confuzie, transform, copaci3, arbvalmax
surse trimise | ajutor