Skip to main content

649.js

/** ------------------------------------------------------------------------------
*
* 2023-05-04
* 649. Dota2 Senate
* https://leetcode.com/problems/dota2-senate/
*
------------------------------------------------------------------------------ */
/**
* @param {string} senate
* @return {string}
*/
var predictPartyVictory = function (senate) {
const stack = [];
const senateArray = senate.split("");

for (let i = 0; i < senateArray.length; i++) {
if (!stack.length) {
stack.push(senateArray[i]);
} else if (stack.length && stack[stack.length - 1] === senateArray[i]) {
stack.push(senateArray[i]);
} else {
senateArray.push(stack.pop());
}
}
return stack[0] === "R" ? "Radiant" : "Dire";
};

console.log(predictPartyVictory("RDD"));