Cod sursa(job #1067426)
Utilizator | FII Filimon Marta Diana marta_dianna | Data | 26 decembrie 2013 20:09:39 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Teme Pregatire ACM Unibuc 2013 | Marime | 0.57 kb |
#include<fstream>
#define NMAX 1000010
using namespace std;
int n, i, nr, ap, a[NMAX];
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int main()
{
f>>n;
for (i=1; i<=n; ++i)
{
f>>a[i];
if (ap==0)
{
nr=a[i];
ap=1;
}
else
if (nr==a[i]) ++ap;
else --ap;
}
ap=0;
for (i=1; i<=n; ++i)
if (nr==a[i]) ++ap;
if (ap>=n/2+1) g<<nr<<" "<<ap<<"\n";
else g<<"-1\n";
f.close();
g.close();
return 0;
}