Cod sursa(job #2133988)
| Utilizator | Data | 17 februarie 2018 15:18:55 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.45 kb |
#include <bits/stdc++.h>
using namespace std;
int main() {
ifstream inf ("elmaj.in");
ofstream outf ("elmaj.out");
long n;
inf >> n;
long arr[1000005] = {0};
long freq[1000005] = {0};
for (long i = 0; i < n; i++)
inf >> arr[i];
long ind = arr[0];
for (long i = 0; i < n; i++)
{
freq[arr[i]]++;
if (freq[ind] < freq[arr[i]]) ind = arr[i];
}
if (freq[ind] >= (n/2+1))
outf << ind << " " << freq[ind];
else
outf << -1;
return 0;
}