题目
思路一 模拟
模拟每一次比赛的配对情况。
代码一
class Solution:
def numberOfMatches(self, n: int) -> int:
ans=0
while(n>1):
if(n&1):
ans+=(n-1)//2
n=(n+1)//2
else:
ans+=n//2
n=n//2
return ans
思路二 脑筋急转弯
最终只有一个获胜队,需要有n-1个队被淘汰,被淘汰了多少次就是有多少次配对。
代码二
class Solution:
def numberOfMatches(self, n: int) -> int:
return n-1