Pagini recente » Cod sursa (job #1875502) | Cod sursa (job #1112260) | Cod sursa (job #1767359) | Cod sursa (job #120739) | Cod sursa (job #653220)
Cod sursa(job #653220)
// Algoritm de ** puncte pe infoarena
#include<fstream>
#include <algorithm>
#define maxn 1000001
using namespace std;
ifstream f("elmaj.in");
ofstream g("elmaj.out");
int n,maj,nrpoz,v[maxn];
int sortMajority(int n, int a[], int &nr)
{ sort (a, a + n);
int i = 0;
while (i < n)
{ int j = i;
while (j < n && a[j + 1] == a[i]) j++;
nr=j-i+1;
if (nr > n/2) return (a[i]);
i = j + 1;
}
return -1;
}
int main(void)
{ f>>n;
for(int i=0;i<n;i++) f>>v[i];
maj=sortMajority(n,v,nrpoz);
if(maj==-1) g<<"-1\n";
else g<<maj<<' '<<nrpoz<<'\n';
g.close(); return 0;
}