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);
    }
}