Cod sursa(job #765792)
Utilizator | Data | 9 iulie 2012 12:14:26 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 70 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.62 kb |
#include <fstream>
#include <set>
using namespace std;
ifstream fin ("elmaj.in");
ofstream fout ("elmaj.out");
int main()
{
int n,i,x,j;
multiset<int> a;
multiset<int> :: iterator it;
fin>>n;
for ( i=0;i<n;i++ )
{
fin>>x;
a.insert (x);
}
it=a.begin();
for(i=0;i<n/2;i++,it++);
x=*it;
//x=(a.begin()+a.end())/2;
j=0;
//for (it=a.begin();it!=a.end();it++)
// if ( *it==x )
// j++;
j=a.count(x);
if (j>n/2)
fout<<x<<" "<<j;
else
fout<<-1;
fin.close();
fout.close();
return 0;
}