Cod sursa(job #1331093)

Utilizator AureliaCretu Aurelia Aurelia Data 31 ianuarie 2015 12:28:33
Problema Elementul majoritar Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include <iostream>

using namespace std;
int v[2*10^9], fr[10];
int main()
{int n, s, i;
cin>>n;
for(i=1; i<=n; i++) cin>>v[i];
fr[1]=0;
s=0;
for(i=2; i<=n; i++)
{if(fr[1]==0)
        {
            fr[1]++;
            s=v[i-1];
        }
        else
        {if(v[i-1]==v[i]) fr[1]++;
        else
        {
            fr[1]--;
            s=v[i];
        }
        }
}
fr[1]=0;
for(i=1; i<=n; i++)
{
    if(s==v[i]) fr[1]++;
}
if(fr[1]>n/2) cout<<s<<" "<<fr[1];
else cout<<"-1";
}