Cod sursa(job #2163875)
Utilizator | Radoi Iulian aeromaniaX | Data | 12 martie 2018 20:18:23 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.67 kb |
#include <bits/stdc++.h>
using namespace std;
int a[999999];
int n,candidat,k,nr;
void date()
{
freopen("elmaj.in","r",stdin);
freopen("elmaj.out","w",stdout);
}
int main()
{
date();
scanf("%d",&n);
candidat = -1;
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
if(k==0)
candidat=a[i],k++;
else if(a[i]==candidat) k++;
else k--;
}
if(candidat == -1)
{
printf("-1");
return 0;
}
for(int i=1;i<=n;i++)
if(a[i]==candidat)
nr++;
if(nr>n/2)
printf("%d %d\n",candidat,nr);
else printf("-1");
return 0;
}