cały czas moje wyjście nie jest prawidłowe
zad.
Zadanie Wybory
W wyborach burmistrza Wielkiego Guslaru wystartowało M kandydatów ponumerowanych liczbami od 1 do M. Każdy z N głosujących oddał ważny głos na jednego z nich. Napisz program, który wczyta opis głosów, a następnie poda wyniki głosowania i numer kandydata wybranego na burmistrza. Zgodnie z prawem wyborczym Wielkiego Guslaru, jeśli dwóch lub więcej kandydatów uzyskało tę samą, najwyższą liczbę głosów, to wybory wygrywa ten z nich, który ma niższy numer.
Wejście
W pierwszej linii wejścia znajdują się dwie liczby całkowite M i N (1<=M<=10, 1<=N<=1000), określające odpowiednio liczbę kandydatów i liczbę oddanych głosów. W drugiej linii znajduje się N liczb całkowitych z zakresu od 1 do M. Są to numery kandydatów, na których oddane zostały poszczególne głosy.
Wyjście
W pierwszych M liniach wyjścia należy podać kolejno liczby głosów zdobytych przez kandydatów z numerami od 1 do M, w formacie "X: Y", gdzie X oznacza numer kandydata, a Y - liczbę oddanych na niego głosów. Następnie w osobnej linii należy wypisać numer kandydata, który wygrał wybory.
Przykład
Wejście:
3 10
1 3 2 1 2 3 3 3 2 2
Wyjście:
1: 2
2: 4
3: 4
2
#include<iostream>
using namespace std;
int main()
{
int N,w, i,gloss[1000];
int ile[10];
int M,kan;
cin >> M >> N;
for(i=0;i<N;i++)
{
cin >> gloss[i];
}
for(i=0,w=0,ile[10]=0;i<N;i++)
{
if(gloss[i]==1)
{
ile[w]=ile[w]+1;
}
if(gloss[i]==2)
{
ile[w+1]=ile[w+1]+1;
}
if(gloss[i]==3)
{
ile[w+2]=ile[w+2]+1;
}
}
for(kan=0,w=0;kan<M;kan++,w++)
{
cout <<kan+1<<":"<< ile[w] <<endl;
}
return 0;
}