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