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

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


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

Oricine a realizat vreodată un site Web s-a confruntat cu problema referinţelor incorecte (legături care nu funcţionează deoarece documentul a cărui adresă este specificată nu există).
Un site Web este constituit din unul sau mai multe fişiere HTML, primul fişier fiind pagina principală, de la care se porneşte în vizitarea site-ului.
Site-ul este corect structurat dacă orice pagină a site-ului poate fi vizitată plecând de la pagina principală.
Nu vom intra în amănunte cu privire la structura documentelor HTML, deoarece din perspectiva problemei noastre interesează doar două aspecte:
1. Un document HTML începe cu o linie pe care este scrisă numai eticheta <HTML> şi se termină cu o linie pe care este scrisă numai eticheta </HTML>
2. O referinţă într-un document HTML începe cu o construcţie de tipul următor:
<A HREF="nume_fişier">. Considerăm că referinţa este incorectă dacă fişierul nume_fişier nu face parte din site-ul Web.

Cerinţă

Date fiind fişierele care compun un site Web (numele fişierelor, precum şi conţinutul acestora), să se identifice numărul referinţelor incorecte, precum şi numărul de fişiere ce nu pot fi vizitate plecând de la pagina principală a site-ului.

Date de intrare

Fişierul de intrare links.in conţine pe prima linie numărul natural N, reprezentând numărul de fişiere din care este constituit site-ul.
Pe următoarele linii ale fişierului de intrare sunt descrise cele N fişiere ale site-ului. Pentru fiecare fişier al site-ului este specificat pe o linie numele fişierului, iar pe următoarele linii este descris conţinutul fişierului.

Date de ieşire

Fişierul de ieşire links.out va conţine o singură linie pe care vor fi scrise două numere naturale separate prin spaţiu R P, reprezentând numărul de referinţe incorecte, respectiv numărul de pagini ce nu pot fi vizitate plecând de la pagina principală a site-ului.

Restricţii

  • N≤100
  • Dimensiunea oricărui fişier de intrare ≤100 KB.
  • Nu se va face distincţie între literele mari şi literele mici (HTML este un limbaj case-insensitive).
  • În HTML, spaţiile inutile se ignoră.
  • Construcţiile <HTML>, </HTML>,<A HREF="nume_fişier"> sunt utilizate numai cu semnificaţia din enunţ.
  • Lungimea oricărei linii din fişierul de intrare ≤200 caractere.
  • Numele fişierelor sunt ≤50 caractere.
  • În cadrul site-ului pot apărea cel mult 200 de fişiere în referinţe.

Exemple

links.in links.out
4
index.html
<html>
Pagina principala
<A HREF="1">
si alt link <A href="2">
</HTML>
1
<html>
Uite o poza <A HREF="abc.jpg">
</html>
2
<html>
Solutie
<a href="Sol.pas">
</html>
3
<html>
Rezultate
Clasa a IX-a <A HREF="rez9.html"> Clasa a X-a <A HREF="rez10.html">
</html>
4 1

prof. Emanuela Cerchez
Liceul de Informatică „Grigore Moisil” Iaşi
emanuela.cerchez@gmail.com
propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la .campion 2009: efort, muzeu, bal, seti, basm, dansatori, smith, timer, secvsir, vot, cetati, reziduu, biliard, prefix1, accesibil, dp, jocv, placa, palc, prod3, predecesor, standard, cantor, nkbiti, nori, triti, kperms, sotron1, impozit, tablite, fazan, lanturi, secvpar, tom, joker, matriosca, asociativ, lego, medalii, permutari, cfr, treegame, scanduri, site, fotbal, kbiti, segm, album, iepurasi, jucarii, m4, bradut, trmv, colorare, greutati, concat, graphgame, ic, echilibru, brazi, mat, cubinvers, mobil, distsir, parbit
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, segm, colorare, brazi, mobil, distsir, guess, greiere, pestera, conferinta, chei, ny, nx, ghinion, sumb, drenaj, telecomanda, grupuri, mahjong, rotund, viena, 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 şiruri de caractere: scp, ab, sl, nrcuv, rv, kpal, chimie, reteta, replace, grad, index, cod, text, decript, spam, complex, cifre, anagrame, balbe, criptmat, mesaj, maxim, astre, sablon, formule, ed, balls, vocale, prop, bacan, novel, bitslang, text2, ref, scor2, convert, cod2, compress, pstring, sub, rima, program1, sms, circular, randuri, cezar, bifo, joc9, pal, bare, joc12, fractie, cod3, tunel, csir, top, ratina, cifru1, limbaj, adun, ecuatii, dir, paritate, virus, sir6, mesaj2, text1, sirul, ogorul, rez, sablon1, anag, sir8, seti, secvsir, dp, cuvant, strings, antipatie, fractie1, ordonare, text3, concat, codif, cheie, alfabetar, cuvinte2, comp, litere, mxl, mesaj3, expresie2, grad2, antic, zuma, expeval, combcuv, lgdrum, subtitrare, compresie, zigzag, azeval, fraze, subsecvente, showroom, rebus1, agenda, opmult, betisoare, reziston, clase, vot2, ecp, smiley, charlie, cript, scadere, spioni1, sablon3, expand, culori3, virgule
Despre recursivitate: tren, mere, chimie, sarpe, soldati, formule, infinit, compress, ploaia, cartoane, sub, metro, windows, lacuri, apel, maxq, pav, joc11, paianjen, suma2, monkey, csir, lsort, imagine, dir, desert, echitabil, rez, logic, gradina, dreptunghiuri, expresie1, cumpanit, reziston, antitero, sablon3
Software recomandat
Chestionare recomandate
surse trimise | ajutor