Cod sursa(job #3293616)
| Utilizator | Data | 12 aprilie 2025 09:42:25 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.52 kb |
#include <fstream>
#define int long long
using namespace std;
ifstream fcin("elmaj.in");
ofstream fout("elmaj.out");
int n,v[1000001],nr,last;
signed main()
{
fcin>>n;
for(int i=1; i<=n; i++)
fcin>>v[i];
nr=1, last=v[1];
for(int i=2; i<=n; i++)
{
if((v[i] ^ last)) nr--;
else nr++;
if(nr<0) nr=1, last=v[i];
}
nr=0;
for(int i=1; i<=n; i++)
nr+=(last==v[i]);
if(nr>=n/2+1) fout<<last<<" "<<nr;
else fout<<-1;
return 0;
}
