力扣649.Dota2参议院
贪心
- 用flag记录当前R和D的数量
- 到R时flag ++,D时flag - -;
class Solution { public: string predictPartyVictory(string senate) { bool R = true,D = true; //记录当前是否还有R和D int flag = 0; while(R && D) { //先置空 R = false; D = false; for(int i=0;i<senate.size();i++) { if(senate[i] == 'R') { //说明之前有D 当前R应该被灭 if(flag < 0) senate[i] = 0; else R = true; flag ++; } if(senate[i] == 'D') { //说明之前有R 当前D应该被灭 if(flag > 0) senate[i] = 0; else D = true; flag --; } } } return R == true ? "Radiant":"Dire"; } };