Dota2 Senate LeetCode solution in C++
1class Solution {2public:3string predictPartyVictory(string senate) {4queue<int> D, R;5int len = senate.size();6for (int i = 0; i < len; i++) {7if (senate[i] == 'D') {8D.push(i);9} else {10R.push(i);11}12}1314while (!D.empty() && !R.empty()) {15int dIdx = D.front();16D.pop();1718int rIdx = R.front();19R.pop();2021if (dIdx < rIdx) {22D.push(dIdx + len);23} else {24R.push(rIdx + len);25}26}2728return D.empty() ? "Radiant" : "Dire";29}30};