Pagini recente » Diferente pentru multe-smenuri-de-programare-in-cc-si-nu-numai intre reviziile 10 si 54 | Diferente pentru utilizator/a_h1926 intre reviziile 73 si 79 | Monitorul de evaluare | Istoria paginii problema/findmin | Diferente pentru problema/rmq intre reviziile 30 si 31
Diferente pentru
problema/rmq intre reviziile
#30 si
#31
Nu exista diferente intre titluri.
Diferente intre continut:
Putem de asemenea rezolva problema folosind un arbore de intervale ( vezi problema "Arbori de intervale":arbint ). Aceasta idee are complexitatea $O(NlogN+MlogN)$ si ar trebui sa obtina $60-70$ de puncte. O sursa care foloseste arbori de intervale gasiti "aici":job_detail/148285?action=view-source.
Pentru a obtine $100$ de puncte, vom folosi o idee mai simpla decat cea cu arbori de intervale si anume vom folosi algoritmul de Range minimum query care poate fi redus la complexitatea $O(NlogN + M)$.
O descriere mai pe larg a acestui algoritm gasiti "aici":preoni-2007/runda-2/solutii la problema $Plantatie$.
Sursa care foloseste aceasta abordare o gasiti "aici":job_detail/148283?action=view-source.
Un alt articol interesant este "acesta":http://www.topcoder.com/tc?module=Static&d1=tutorials&d2=lowestCommonAncestor unde este descris atat algoritmul RMQ cat si folosirea lui in determinarea LCA-ului (Lowest Common Ancestor).
Sursa care foloseste aceasta abordare o gasiti "aici":job_detail/148283?action=view-source.
Ideea de la RMQ se poate folosi si la alte operatii cum ar fi la operatia de determinare a celui mai mic divizor comun pentru o subsecventa, de exemplu in problema 'Euclid':problema/euclid.
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.