Cod sursa(job #3316550)
| Utilizator | Data | 19 octombrie 2025 10:55:07 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.71 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("elmaj.in");
ofstream fout("elmaj.out");
int n;
vector<int> v;
int main()
{
fin>>n;
int x;
for(int i=0 ; i<n ; i++)
{
cin>>x;
v.push_back(x);
}
int candidat=v[1] , contor=1;
for(int i=1 ; i<n ; i++)
{
if(v[i]==candidat)
contor++;
else
contor--;
if(contor==0)
{
candidat=v[i];
contor=1;
}
}
contor=0;
for(int i=0 ; i<n ; i++)
if(v[i]==candidat)
contor++;
if(contor>=(n/2+1))
fout<<candidat<<" "<<contor;
else
fout<<-1;
return 0;
}
