Cod sursa(job #1462742)
Utilizator | Teodorescu Stefan Eduard TeodorescuStefanEduard | Data | 18 iulie 2015 19:50:48 |
---|---|---|---|
Problema | Elementul majoritar | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.6 kb |
#include <iostream>
#include <fstream>
using namespace std;
fstream in("elmaj.in", ios::in);
fstream out("elmaj.out", ios::out);
int n,a[1000];
int suma(long);
int main()
{
long nr,maxim=0,maximi=0,x;
in>>n;
while(in>> nr)
{
x= suma(nr);
a[x]++;
if(a[x] > maximi)
{
maximi= a[x];
maxim= nr;
}
}
if(maximi > n/2)
out<< maxim<< " "<< maximi;
else
out<< -1;
in.close();
out.close();
return 0;
}
int suma(long nr)
{
int suma=0,k=1;
while(nr)
{
suma+= (nr% 10)* k *k;
nr/= 10;
k++;
}
return suma;
}