Cod sursa(job #748559)
| Utilizator | Data | 13 mai 2012 19:25:02 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
#include<fstream>
using namespace std;
#define DMAX 1000001
int v1[DMAX],v2[DMAX];
int main()
{
ifstream cin("elmaj.in");ofstream cout("elmaj.out");
int i,n,k1,k2,s=0;
cin>>n;k2=n;
for(i=1;i<=n;i++)
cin>>v1[i],v2[i]=v1[i];
while(k2!=1)
{
k1=0;
for(i=1;i<=k2;i+=2)
if(v2[i]==v2[i+1]||i==k2-1)
v2[++k1]=v2[i];
k2=k1;
}
for(i=1;i<=n;i++)
if(v1[i]==v2[k2])
s++;
cout<<v2[k2]<<' '<<s;
}
