查看原题
解题思路(模拟)
一步步模拟出比赛的步骤,直到剩下一名选手。
代码
/**
* @param {number} n
* @return {number}
*/
var numberOfMatches = function(n) {
let count = 0;
while(n > 1){
let temp = Math.floor(n / 2);
count += temp;
n = Math.ceil(n / 2);
}
return count ;
};
解题思路(找规律)
因为要淘汰n-1名选手,所以要比赛n-1次
代码
/**
* @param {number} n
* @return {number}
*/
var numberOfMatches = function(n) {
return n - 1;
};