Pagini recente » Atasamentele paginii Profil gigel | Istoria paginii happy-coding-2006/solutii | Monitorul de evaluare | Diferente pentru utilizator/mr.dynamite intre reviziile 91 si 92 | Diferente pentru blog/acm-2013-etapa-nationala intre reviziile 5 si 6
Nu exista diferente intre titluri.
Diferente intre continut:
Aceasta a fost cea mai simplă problemă din concurs, fiind rezolvată de marea majoritate a echipelor.
Problema ne cerea să determinăm câştigătorul alegerilor dupa 2 tururi ştiind cate voturi va obţine fiecare candidat in cele 2 tururi. În plus după primul tur rămâneau doar primii k candidati.
O soluţie ar fi sortarea candidaţilor descresrescător după numărul de voturi primite în primul tur, iar pe urmă sortarea primilor k după numărul de votur din al doilea tur.
O soluţie ar fi sortarea candidaţilor descresrescător după numărul de voturi primite în primul tur, iar pe urmă sortarea primilor k după numărul de votur din al doilea tur. Pentru a nu complica implementarea am ales sortarea unui vector de indici in funcţie de numărul de voturi.
== code(cpp) |
#include <iostream>
sort(ind+1,ind+k+1,cmp2);
cout<<ind[1]<<'\n';
}
==
==
h2. 'H. Stones II':http://acm.tju.edu.cn/toj/vcontest/showp9268_H.html
A doua problema ca dificultate din concurs ne dădea $N (N <= 100 000)$ grămezi de pietre şi ne cerea să le reunim cu un cost cât mai mic. Pentru a putea reuni grămezile putem lipi la un pas două grămezi cu un cost egal cu numărul de pietre din cele două grămezi la un loc.
Pentru a rezolva problema putem aplica o strategie de tip greedy în care la fiecare pas luăm cele mai mici două grămezi şi le reunim. Pentru a se încadra în timp şi pentru a fi corect e necesară folosirea unui multiset şi a tipului de date long long.
h2.
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.