class Solution:
def predictPartyVictory(self, senate: str) -> str:
n = len(senate)
radiant = collections.deque()
dire = collections.deque()
for i, ch in enumerate(senate):
if ch == "R":
radiant.append(i)
else:
dire.append(i)
while radiant and dire:
if radiant[0] < dire[0]:
radiant.append(radiant[0] + n)
else:
dire.append(dire[0] + n)
radiant.popleft()
dire.popleft()
return "Radiant" if radiant else "Dire"
# 贪心算法,又是摸鱼的一天
# https://leetcode-cn.com/problems/dota2-senate/solution/dota2-can-yi-yuan-by-leetcode-solution-jb7l/