Leetcode 649. Dota2 Senate

Posted SnailTyan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode 649. Dota2 Senate相关的知识,希望对你有一定的参考价值。

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. Description

Dota2 Senate

2. Solution

解析: Version 1每次投票都禁掉一个对方的参议员,由于是循环投票,因此当前投票的参议员在投票结束后进入队尾,投票直至分出胜负,即只剩下一方的参议员为止。

  • Version 1
class Solution:
    def predictPartyVictory(self, senate: str) -> str:
        while 'R' in senate and 'D' in senate:
            if senate[0] == 'R':
                senate = senate[1:].replace('D', '', 1) + senate[0]
            else:
                senate = senate[1:].replace('R', '', 1) + senate[0]
        if senate[0] == 'R':
            return 'Radiant'
        else:
            return 'Dire'

Reference

  1. https://leetcode.com/problems/dota2-senate/

以上是关于Leetcode 649. Dota2 Senate的主要内容,如果未能解决你的问题,请参考以下文章

Leetcode 649. Dota2 Senate

649. Dota2 Senate

[LeetCode] Dota2 Senate 刀塔二参议院

算法入门 04模拟(中等 - 第一题)LeetCode 8

算法入门归并排序(简单 - 第一题)LeetCode 21

算法入门线性枚举(中等 - 第一题)LeetCode 19