Pagini recente » Cod sursa (job #2698988) | Cod sursa (job #1890560) | Cod sursa (job #3169571) | Cod sursa (job #2454653) | Cod sursa (job #1012173)
#include <cstdio>
#include <vector>
#include <cstdlib>
#include <cstring>
#define N 1000010
using namespace std;
vector <int> bucket[10];
vector <int>::iterator it;
inline int max(int x,int y){ if(x>y)return x; return y; }
int a[N];
int main()
{ int n,k;
freopen("elmaj.in","r",stdin);
scanf("%d\n",&n);
for(int i=1;i<=n;++i)
scanf("%d ",&a[i]);
fclose(stdin);
int maxv=0;
for(int i=1;i<=n;++i)
{
scanf("%d",&a[i]);
maxv=max(maxv,a[i]);
}
fclose(stdin);
long long exp=1;
while(maxv>exp)
{
for(int i=1;i<=n;++i)bucket[a[i]/exp%10].push_back(a[i]);
k=0;
for(int i=0;i<10;++i)
{
for(it=bucket[i].begin();it!=bucket[i].end();++it)
a[++k]=*it;
bucket[i].clear();
}
exp*=10;
}
int x=a[n/2],ap=0;
freopen("elmaj.out","w",stdout);
for(int i=1;i<=n;++i)
if(x==a[i])++ap;
if(ap>n/2)printf("%d %d",x,ap);
else printf("-1");
fclose(stdout);
return 0;
}