Cod sursa(job #1588090)
| Utilizator | Data | 2 februarie 2016 19:51:32 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.81 kb |
#include <fstream>
using namespace std;
int n,a[1000005],c,nr;
int main(){
freopen("elmaj.in","r",stdin);
freopen("elmaj.out","w",stdout);
scanf("%d",&n);
for (int i=1;i<=n;i++){
scanf("%d",&a[i]);
if (!c){
c=a[i];
nr++;
}
else {
if (c==a[i]){
nr++;
}
else {
nr--;
}
}
if (nr==0){
c=0;
}
}
if (c){
nr=0;
for (int i=1;i<=n;i++){
if (a[i]==c){
nr++;
}
}
if (nr>=n/2+1){
printf("%d %d",c,nr);
}
else {
printf("-1");
}
}
else {
printf("-1");
}
}
