Cod sursa(job #2475688)
Utilizator | Back Andrei-Gheorghe E1go | Data | 17 octombrie 2019 12:51:27 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 40 |
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");
vector <int> v, g;
int main()
{
int nr, cate=0, n, x;
fin>>n;
g.resize(n+1);
for(int i=0; i<n; i++)
{
fin>>x;
v.push_back(x);
g[i]=1;
for(int j=0; j<i; j++)
{
if(v[i] == v[j])
g[i]=g[j]+1;
if(g[i] > cate)
{
cate=g[i];
nr=v[i];
}
}
if(cate==n/2+1)
{
fout<<nr<<" "<<cate;
return 0;
}
}
if(cate == n/2+1)
fout<<nr<<" "<<cate;
return 0;
fout<<-1;
return 0;
}