Count of Matches in Tournament
给一个由n个team组成的比赛, 如果n是偶数, 则进行n/2个比赛, 如果n是奇数则进行(n – 1)/2 +1个比赛,问一共要有多少比赛才能决定胜者.
class Solution {
public int numberOfMatches(int n) {
if(n == 1)
return 0;
return n % 2 == 0? numberOfMatches(n / 2) + (n / 2) : numberOfMatches(((n - 1) / 2) + 1) + ((n - 1) / 2);
}
}