比赛配对问题 | 豆包MarsCode AI刷题

24 阅读1分钟
def solution(n: int) -> int:
    pairs = 0
    while n > 1:
        if n % 2 == 0:
            pairs += n // 2
            n = n // 2
        else:
            pairs += (n - 1) // 2
            n = (n - 1) // 2 + 1
    return pairs

if __name__ == '__main__':
    print(solution(7) == 6)
    print(solution(14) == 13)
    print(solution(1) == 0)