Pagini recente » Cod sursa (job #665325) | Cod sursa (job #1754834) | Cod sursa (job #2990068) | Cod sursa (job #1731522) | Cod sursa (job #2875254)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int n, a[1000000];
void citire() {
fin>>n;
for (int i=0; i<n; i++)
fin>>a[i];
}
void majoritate() {
int cand=-1, nr=0;
for (int i=0; i<n; i++)
if (nr==0) {
cand=a[i];
nr=1;
} else if (a[i]==cand)
nr++;
else
nr--;
if (cand==-1) {
fout<<cand;
return;
}
int nrv=0;
for (int i=0; i<n; i++)
if (a[i]==cand)
nrv++;
if (nrv>=n/2+1)
fout<<cand<<" "<<nrv;
else
fout<<"-1";
}
int main() {
citire();
majoritate();
return 0;
}