Diferente pentru preoni-2005/runda-2/solutii intre reviziile #6 si #7

Nu exista diferente intre titluri.

Diferente intre continut:

==Rankings(rounds="preoni52a" display_entries="8" pager_style="none")==
1. Cristina Stancu Mara 230 puncte
2. Buruiana Filip Cristian 210 puncte
3. Sorin Fagateanu 200 puncte
Balaurul Arhirel 200 puncte
Macarie & Petronela 200 puncte
Ion Iliescu 200 puncte
4. Rus Cristian 180 puncte
5. Sorin Fagateanu 170 puncte
 
Sub pseudonimele ==user(user="arhirel" type="tiny")== si ==user(user="macarie" type="tiny")== se "ascunde", ca si la prima runda, echipa care va reprezenta Romania la finala ACM, formata din Mugurel Andreica, Marius Andrei si Ghinea Dan. Ei au concurat pe un singur calculator pentu a simula un concurs ACM. Stati linistit, premiile se dau doar concurentilor din ciclul de invatamant pre-universitar! De asemenea, se pare ca unii concurenti simt nevoia sa-si creeze mai multe conturi, Sorin Fagateanu avand 3 conturi in top 5 (cele 2 pe numele lui si contul cu numele "Ion Iliescu")... Tineti minte ca la un concurs "standard" nu aveti voie cu mai multe surse!
h3. Pascal
Ca sa calculam puterea la care apare factorul prim $p$ in descompunerea lui $n!$ se poate folosi urmatoare formula $f = [n/p] + [n/p^2^] + [n/p^3^] +$ ... ({$[]$} reprezinta partea intrega). Avand acesta formula putem traversa un anumit rand din triunghiul lui Pascal si pt fiecare element ({$r,c$}) putem calcula puterea la care apare $d$ in descompunerea lui $r ! / ((r-c) ! * c!)$ . Atunci cand $d$ nu este prim trebuie sa avem grija sa verificam daca respectivul element ({$r,c$}) are in descompunerea sa toti factori primi a lui {$d$}. Daca $d=6$ , elementul din ({$r,c$}) trebuie sa contina $2$ si $3$ in descompunerea sa, iar daca {$d = 4$}, trebuie sa contina $2$ de cel putin doua ori.
O alta modalitate sa calculam puterea la care apare un factor prim $p$ in descompunerea lui este: fie {$A{~c~}$} = puterea la care apare $p$ in decompunrea lui ({$r,c$}). $A{~c+1~} = {$A{~c~}$} + puterea lui $p$ in ({$r-c$}) - puterea lui $p$ in ({$c+1$}). Acesta relatie se poate deduce din modul din care putem calcula elementul ({$r,c+1$}) din ({$r,c$}) folosind formula ({$r,c$}) = $r ! / ((r-c)! * c !)$
O alta modalitate sa calculam puterea la care apare un factor prim $p$ in descompunerea lui este: fie {$A{~c~}$} = puterea la care apare $p$ in decompunrea lui ({$r,c$}). $A{~c+1~}$ = {$A{~c~}$} + puterea lui $p$ in ({$r-c$}) - puterea lui $p$ in ({$c+1$}). Acesta relatie se poate deduce din modul din care putem calcula elementul ({$r,c+1$}) din ({$r,c$}) folosind formula ({$r,c$}) = $r ! / ((r-c)! * c !)$
Aceasta a fost cea mai simpla problema de la clasele {$9-10$}, oricare din cele doua idei prezentate mai sus aducand punctaj maxim.
Secv
h3. Secv
Subsirul trebuie sa contina toate elementele din sirul original in ordine crescatoare asa ca primul pas este sa ne formam acest subsir C. Avand acest subsir, parcurgem vectorul initial pentru a gasi pozitia de start a noii subsecvente. Dupa ce am gasit o posibila pozitie de start s incercam sa gasim subsirul C avand ca pozitie de start s. Din toate aceste subsecvente o alegem pe aceea cu lungimea minima. Asftel, complexitatea algoritmului ajunge la O(N*M), unde N este lungimea secventei initiale si M lungimea subsirului C. Problema se poate rezolva in aceeasi complexitate si cu programare dinamica, lasam acesta rezolvare ca exercitiu pentru concurenti!

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.