Cod sursa(job #862513)

Utilizator MciprianMMciprianM MciprianM Data 22 ianuarie 2013 19:11:44
Problema Elementul majoritar Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
#include <ctime>
#include <cstdlib>
#include <algorithm>
#include <vector>

using namespace std;

int v[1000009];

int main() {
	srand(time(NULL));
	int n;
	ifstream f("elmaj.in");
	ofstream g("elmaj.out");
	f >> n;
	for(int i = 0; i < n; i++) {
		f >> v[i];
	}
	f.close();
	for(int i = 0; i < 4; ++i) {
		int x = v[(unsigned)(rand() * rand()) % n];
		int c = 0;
		for(int j = 0; j < n; ++j) {
			if(v[j] == x) {
				++c;
			}
		}
		if(c > n / 2) {
			g << x << " " << c << endl;
			g.close();
			return 0;
		}
	}
	g << "-1\n";
	g.close();
	return 0;
}