riddle-bg

Инструкции

Распишани се студентски избори. Секој може да се пријави на истите и секој пријавен добива реден број, почнувајќи од еден. За победник се смета оној кој освоил повеќе од половина гласови, доколку има таков. Доколку никој нема освоено повеќе од половина гласови, натпреварот се смета за неважечки. Комисијата која треба да ги брои гласовите има потреба од алгоритам кој на најбрз можен начин, со минимум искористени ресурси (RAM, меморија) од добиените гласови ќе прогласи реден број на победник, доколку има таков.

int findWinner(int Votes[], int n);

int Votes[]– добиените гласови во вид на низа од редните броеви на кандидатите

int n – бројот на гласови (големина на низата Votes[])

int findWinner- функцијата која треба да го содржи алгоритмот кој ќе го врати редниот број на кандидатот кој се појавува во повеќе од половина од гласовите или -1 доколку нема таков

Бројот на кандидати (различни вредности во Votes[]) е цел број од 1 до 100,000.

Бројот на гласови (n) е цел број од 0 до 2,147,483,647 (max integer).

Пример:
Votes[0]=3;Votes[1]=4;Votes[2]=3;Votes[3]=2;Votes[4]=3;Votes[5]=11;Votes[6]=3;Votes[7]=3;Votes[8]=3;Votes[9]=11;Votes[10]=3;Votes[11]=4;

Победник е кандидатот со реден број 3 бидејќи го има 7 пати во овие 12 гласови, што е повеќе од половина т.е. findWinner(Votes, 12) = 3;

Име и Презиме *

Емаил адреса *

Прикачи документ * (дозволени наставки: zip, rar, 7z, tar)

 

Contact Us

We're not around right now. But you can send us an email and we'll get back to you, asap.

Start typing and press Enter to search