#include <unordered_map>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param numbers int整型vector 
     * @return int整型
     */
    int MoreThanHalfNum_Solution(vector<int>& numbers) {
        // write code here
        unordered_map<int, int> u_map;
        int k = numbers.size()/2 + 1; 
        for(int & num:numbers){
            if(u_map.count(num)){
                u_map[num]++;
            }else{
                u_map[num] = 1;
            }
            if(u_map[num]>=k) return num;
        }
        return 0;
    }
};