Cod sursa(job #1412688)
Utilizator | Data | 1 aprilie 2015 13:53:18 | |
---|---|---|---|
Problema | Elementul majoritar | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <fstream>
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int i, n, el, nr, cont=0, cont1=0, v[1000005];
int main()
{
f>>n;
for (i=1; i<=n; ++i)
{
f>>v[i];
if (cont==0) el=v[i];
else
if (v[i]==el) cont++;
else
cont--;
}
for (i=1; i<=n; ++i) if (v[i]==el) cont1++;
if (cont1>=n/2+1) g<<el<<" "<<cont1;
else
g<<"-1";
return 0;
}