Cod sursa(job #748563)
| Utilizator | Data | 13 mai 2012 19:35:17 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.39 kb |
#include<fstream>
using namespace std;
int v[1000001],s,c;
void d(int l,int r)
{
if(r==l)
{
if(s)
if(v[r]==c)s++;
else s--;
else
c=v[r],s++;
return;
}
int m=(r+l)>>1;
d(l,m);
d(m+1,r);
}
int main()
{
ifstream cin("elmaj.in");ofstream cout("elmaj.out");
int n,i,t=0;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
d(1,n);cout<<c<<' ';
for(i=1;i<=n;i++)
if(c==v[i])t++;
cout<<t;
}
