一、题目描述
二、解题思路
- 题目已经说了方法了。
- 有n个队伍,只有1个冠军,也就是要淘汰n-1个队伍,每场比赛淘汰一个队伍,需要进行n-1场比赛,所以。。。(不讲武德法)
三、代码实现
方法1:
var numberOfMatches = function(n) {
let res = 0
while(n!=1){
if(n%2 == 0){
n = n/2
res += n
}else if(n%2 == 1){
res += (n-1)/2
n = (n-1)/2 + 1
}
}
return res
};
方法2:
var numberOfMatches = function(n) {
return n-1
};