【題目描述】
給出一個含有n(0 < n <= 1000)個整數的數組,請找出其中出現次數超過一半的數。數組中的數大于-50且小于50。
【輸入】
第一行包含一個整數n,表示數組大小;
第二行包含n個整數,分別是數組中的每個元素,相鄰兩個元素之間用單個空格隔開。
【輸出】
如果存在這樣的數,輸出這個數;否則輸出no。
【輸入樣例】
3
1 2 2【輸出樣例】
2
【題解代碼】
#include<bits/stdc++.h>
using namespace std;int main()
{int n;cin >> n;map<int, int> mp;for (int i = 1; i <= n; i++){int x; cin >> x;mp[x]++;if (mp[x] > n / 2){cout << x << endl;return 0;}}cout << "no" << endl;return 0;
}