Cod sursa(job #2227003)
Utilizator | Data | 30 iulie 2018 21:24:21 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include <bits/stdc++.h>
#define Dim 1000005
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
long S[Dim],N,ret,finde;
long elm,ff,maxim;
int main()
{
f>>N;
for(long i=1;i<=N;i++) f>>S[i];
sort(S+1,S+N+1);
ret=S[1]; finde=1;
maxim=(N/2)+1;
for(long i=2;i<=N;i++)
{
if(S[i]==ret) finde++;
else
{
if(finde>=maxim)
ff=finde,elm=ret,maxim=finde;
finde=1; ret=S[i];
}
}
g<<elm<<" "<<ff;
return 0;
}