Best Poker Hand LeetCode solution in C++
1class Solution {2public:3string bestHand(vector<int> &ranks, vector<char> &suits) {4map<int, int> m1;5int mn = INT_MIN;6int all_same = count(begin(suits), end(suits), suits[0]);7int n = ranks.size();8for (int i = 0; i < n; i++) {9m1[ranks[i]]++;10mn = max(mn, m1[ranks[i]]);11}12if (all_same == n) return "Flush";13if (mn >= 3) return "Three of a Kind";14if (mn == 2) return "Pair";15return "High Card";16}17};