Pagini recente » Cod sursa (job #1762039) | Cod sursa (job #175918) | Statistici Panait Mihai-Petru (Petru_77) | Cod sursa (job #2316466) | Cod sursa (job #797461)
Cod sursa(job #797461)
#include <stdio.h>
#include <vector>
#include <fstream>
#include <string>
#define NMAX 1000005
#define LMAX 12
#define MOD (1<<18)
#define pii pair <int,int>
#define pb push_back
#define mp make_pair
#define f first
#define s second
using namespace std;
int n,A[NMAX],rez,nr;
ifstream in("elmaj.in");
ofstream out("elmaj.out");
vector <pii> B[MOD];
void insert(int val,int where)
{
B[where].pb(mp(val,1));
}
int find(int val,int where)
{
int i,vec;
for (i=0; i<B[where].size(); i++)
{
vec=B[where][i].f;
if (vec==val)
{
B[where][i].s++;
if (B[where][i].s>=n/2+1)
rez=val,nr=B[where][i].s;
return B[where][i].s;
}
}
return 0;
}
int main()
{
in>>n;
int i,x;
for (i=1; i<=n; i++)
{
in>>x;
if (!find(x,x &(MOD-1)))
insert(x,x &(MOD-1));
}
if (rez)
{
printf("%d %d\n",rez,nr);
return 0;
}
out<<"-1\n";
return 0;
}