Really interesting O(n) problem. Just like playing.. so actually working on algorithm problems is like playing games!
class Solution { public: int majorityElement(vector<int> &num) { int ret = num[0]; int cnt = 1; for (int i = 1; i < num.size(); i ++) { if (cnt == 0) ret = num[i]; if(num[i] == ret) cnt ++; else cnt--; } return ret; } };