比赛中的配对次数

news/2024/7/20 21:52:51 标签: leetcode, 动态规划, 深度优先

给你一个整数 n ,表示比赛中的队伍数。比赛遵循一种独特的赛制:

如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对。总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮。
如果当前队伍数为 奇数 ,那么将会随机轮空并晋级一支队伍,其余的队伍配对。总共进行 (n - 1) / 2 场比赛,且产生 (n - 1) / 2 + 1 支队伍进入下一轮。
返回在比赛中进行的配对次数,直到决出获胜队伍为止。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/count-of-matches-in-tournament
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

每淘汰一人便配对一次,所以本题直接返回n-1便可。

class Solution {
    public int numberOfMatches(int n) {
       return n-1;
       }
}


http://www.niftyadmin.cn/n/1366453.html

相关文章

检测正方形

给你一个在 X-Y 平面上的点构成的数据流。设计一个满足下述要求的算法: 添加 一个在数据流中的新点到某个数据结构中。可以添加 重复 的点,并会视作不同的点进行处理。 给你一个查询点,请你从数据结构中选出三个点,使这三个点和查…

句子中的有效单词数

句子仅由小写字母(a 到 z)、数字(0 到 9)、连字符(-)、标点符号(!、. 和 ,)以及空格( )组成。每个句子可以根据空格分解成 一个或者多个 token ,这…

地图中的最高点

给你一个大小为 m x n 的整数矩阵 isWater ,它代表了一个由 陆地 和 水域 单元格组成的地图。 如果 isWater[i][j] 0 ,格子 (i, j) 是一个 陆地 格子。 如果 isWater[i][j] 1 ,格子 (i, j) 是一个 水域 格子。 你需要按照如下规则给每个单…

553. 最优除法

给定一组正整数,相邻的整数之间将会进行浮点除法操作。例如, [2,3,4] -> 2 / 3 / 4 。 但是,你可以在任意位置添加任意数目的括号,来改变算数的优先级。你需要找出怎么添加括号,才能得到最大的结果,并且…

917. 仅仅反转字母

给你一个字符串 s ,根据下述规则反转字符串: 所有非英文字母保留在原有位置。 所有英文字母(小写或大写)位置反转。 返回反转后的 s 。 示例 1: 输入:s "ab-cd" 输出:"dc-ba&…

2104. 子数组范围和

给你一个整数数组 nums 。nums 中,子数组的 范围 是子数组中最大元素和最小元素的差值。 返回 nums 中 所有 子数组范围的 和 。 子数组是数组中一个连续 非空 的元素序列。 示例 1: 输入:nums [1,2,3] 输出:4 解释&#xff1…

蜡烛之间的盘子

给你一个长桌子,桌子上盘子和蜡烛排成一列。给你一个下标从 0 开始的字符串 s ,它只包含字符 * 和 | ,其中 * 表示一个 盘子 ,| 表示一支 蜡烛 。 同时给你一个下标从 0 开始的二维整数数组 queries ,其中 queries[i]…

试题 算法训练 拿金币

问题描述 有一个N x N的方格,每一个格子都有一些金币,只要站在格子里就能拿到里面的金币。你站在最左上角的格子里,每次可以从一个格子走到它右边或下边的格子里。请问如何走才能拿到最多的金币。 输入格式 第一行输入一个正整数n。   以下n行描述该方格。金币数保证是不超过…