Pagini recente » Cod sursa (job #2236393) | Cod sursa (job #2025557) | Cod sursa (job #1128176) | Cod sursa (job #1818568) | Cod sursa (job #2038008)
#include <iostream>
#include <fstream>
using namespace std;
int nr=0;
int majorit(int n,int a[],int &nr)
{
int cand=-1, k=0;
for(int i=1;i<=n;i++) {
if(k==0) {
cand=a[i];
k=1;
}
else if(cand==a[i]) {
k++;
}
else {
k--;
}
}
for(int i=1;i<=n;i++)
if(a[i]==cand)
nr++;
if(nr>n/2)
return cand;
else
return -1;
}
int main()
{
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int n;
fin>>n;
int a[n+1];
for(int i=1;i<=n;i++)
fin>>a[i];
fout<<majorit(n,a,nr);
fout<<' '<<nr;
return 0;
}