Cod sursa(job #2143407)

Utilizator Teodor.mTeodor Marchitan Teodor.m Data 25 februarie 2018 21:50:15
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include <bits/stdc++.h>
using namespace std;
 
ifstream in("elmaj.in");
ofstream out("elmaj.out");

int main() {

	int n; in >> n;

	vector< int > v(n);
	for(auto& it: v) {
		in >> it;
	}
	sort(v.begin(), v.end());

	int nrAparitii = 1, valoare = v[0];
	
	for(int i = 1; i < n; ++i) {
		while(i < n && v[i] == v[i - 1]) {
			nrAparitii++;
			++i;
		}
		if(nrAparitii >= (n / 2) + 1) {
			out << valoare << " " << nrAparitii << '\n';
			break;
		}
		nrAparitii = 1;
		valoare = v[i];
	}

    in.close(); out.close();
 
    return 0;
}