Cod sursa(job #1904711)
| Utilizator | Data | 5 martie 2017 18:57:00 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.61 kb |
#include <fstream>
using namespace std;
ifstream fin ("elmaj.in");
ofstream fout ("elmaj.out");
int n,m,p,i,j,k,ap,maj,sol,nr,maxim;
int v[1000010];
int main()
{
fin>>n;
maj=v[1];
ap=1;
nr=1;
for(i=1;i<=n;i++){
fin>>v[i];
if(v[i]==maj)
++ap;
else{
--ap;
if(ap==0){
maj=v[i];
ap=1;
}
}
}
ap=0;
for(i=1;i<=n;i++)
if(v[i]==maj)
++ap;
if(ap>=(n/2+1))
fout<<maj<<" "<<ap;
else
fout<<"-1";
return 0;
}
