Pagini recente » Cod sursa (job #3237854) | Cod sursa (job #2900286) | Clasament preoni4a | Cod sursa (job #1163701) | Cod sursa (job #1990910)
#include <iostream>
#include <stack>
using namespace std;
int A[1000];
void printstk(stack<int> stk)
{
while (!stk.empty() ) cout << stk.top() << ' ', stk.pop();
cout << '\n';
}
int main()
{
stack <int> Stk;
int N;
cin >> N;
for (int i = 1; i <= N; ++i)
cin >> A[i];
for (int i = 1; i <= N; ++i)
{
if (Stk.empty())
Stk.push(A[i]);
else if (A[i] == Stk.top())
Stk.push(A[i]);
else
Stk.pop();
//printstk(Stk);
}
if (Stk.empty())
{
cout << -1;
return 0;
}
int cand = Stk.top();
int cnt = 0;
for (int i = 0; i < N; ++i)
if (A[i+1] == cand)
cnt++;
if (cnt > N/2)
cout << cand << ' ' << cnt;
else
cout << -1;
return 0;
}