LeetCode 1688. 比赛中的配对次数(模拟)
文章目录
- 1. 题目
- 2. 解题
1. 题目
给你一个整数 n ,表示比赛中的队伍数。比赛遵循一种独特的赛制:
- 如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对。总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮。
- 如果当前队伍数为 奇数 ,那么将会随机轮空并晋级一支队伍,其余的队伍配对。总共进行 (n - 1) / 2 场比赛,且产生 (n - 1) / 2 + 1 支队伍进入下一轮。
返回在比赛中进行的配对次数,直到决出获胜队伍为止。
示例 1:
输入:n = 7
输出:6
解释:比赛详情:
- 第 1 轮:队伍数 = 7 ,配对次数 = 3 ,4 支队伍晋级。
- 第 2 轮:队伍数 = 4 ,配对次数 = 2 ,2 支队伍晋级。
- 第 3 轮:队伍数 = 2 ,配对次数 = 1 ,决出 1 支获胜队伍。
总配对次数 = 3 + 2 + 1 = 6示例 2:
输入:n = 14
输出:13
解释:比赛详情:
- 第 1 轮:队伍数 = 14 ,配对次数 = 7 ,7 支队伍晋级。
- 第 2 轮:队伍数 = 7 ,配对次数 = 3 ,4 支队伍晋级。
- 第 3 轮:队伍数 = 4 ,配对次数 = 2 ,2 支队伍晋级。
- 第 4 轮:队伍数 = 2 ,配对次数 = 1 ,决出 1 支获胜队伍。
总配对次数 = 7 + 3 + 2 + 1 = 13提示:
1 <= n <= 200
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/count-of-matches-in-tournament
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
class Solution {public:int numberOfMatches(int n) {int ans = 0;while(n >= 2){if(n%2 == 0){ans += n/2;n /= 2;}else{ans += (n-1)/2;n = (n-1)/2 + 1;}}return ans;}
};
0 ms 6.3 MB C++
注意到答案有规律,就是 n-1
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode 1688. 比赛中的配对次数(模拟)相关推荐
- 【快乐水题】1688. 比赛中的配对次数
原题: 力扣链接:1688. 比赛中的配对次数 题目简述: 给你一个整数 n ,表示比赛中的队伍数.比赛遵循一种独特的赛制: 如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对.总共进行 n ...
- 1688.比赛中的配对次数-LeetCode
难度:简单 目录 一.问题描述 二.解题思想 三.解题 1.判断极端情况 2.代码实现 四.总结 一.问题描述 这里直接采用的是LeetCode上面的问题描述. 给你一个整数 n ,表示比赛中的队伍数 ...
- 1688比赛中的配对次数
给你一个整数 n ,表示比赛中的队伍数.比赛遵循一种独特的赛制: 如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对.总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮. 如果 ...
- Leetcode1688. 比赛中的配对次数[C++题解]:简单题模拟
文章目录 题目 题目链接 题目 题意重述:给定n支队伍.若n为偶数,两两配对,晋级n/2支队伍:若n为奇数,随机晋级一支队伍,剩下的两两配对.晋级(n-1)/2+1支队伍. 统计决出冠军时总共的配对次 ...
- LeetCode简单题之比赛中的配对次数
题目 给你一个整数 n ,表示比赛中的队伍数.比赛遵循一种独特的赛制: 如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对.总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮. ...
- LeetCode 2212. 射箭比赛中的最大得分(状态枚举)
文章目录 1. 题目 2. 解题 1. 题目 Alice 和 Bob 是一场射箭比赛中的对手.比赛规则如下: Alice 先射 numArrows 支箭,然后 Bob 也射 numArrows 支箭. ...
- angularjs 元素重复指定次数_[LeetCode] 442. 数组中重复的数据
[LeetCode] 442. 数组中重复的数据 题目链接: https://leetcode-cn.com/problems/find-all-duplicates-in-an-array 难度:中 ...
- leetcode探索专题中的初级算法练习题(python代码+解题思路)
本文记录leetcode探索专题中的初级算法练习题,附python实现代码&解题思路,做题过程不免查阅网络资料,侵删~如有错误,欢迎指正交流! 目录 专题一:数组: 26.从排序数组中删除重复 ...
- 全球顶级语音技术比赛中获双料冠军,这家中国公司靠什么?
萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 一场关键比赛,刚刚在全球顶级语音会议INTERSPEECH 2021上决出胜负. 腾讯.西工大.CMU等国内外机构是这场对决的主办方,两项比 ...
最新文章
- [转贴] C++内存管理检测工具 Valgrind
- LeetCode-动态规划基础题-62. 不同路径
- LPC2103开发板I2C测试试验
- JSON学习资料整理
- 腾讯云linux vnc端口,用腾讯云手把手教你用VNC搭建Ubuntu可视化界面(一)
- 字节跳动面试官:千峰java培训多少钱
- visual studio 编译器在辨异 C/C++ 程序时的注意事项
- [WCF权限控制]WCF的三种授权模式
- 一文带你了解Java编程语言的前世今生 | Java核心知识点整理
- educoder算法设计与分析 实验三 动态规划实验
- depends工具查看exe和dll依赖关系
- 概率分布-beta分布
- 使用chrome控制台下载页面图片
- 去掉电影字幕的最好方法
- 麦克风声源定位原理_使用麦克风阵列对声源定位的方法
- [转载整理]晚甘园红茶之醇活动之二-把杯叙红茶!
- jstl 标签 循环 序号
- 跨平台应用开发进阶(二十九) :uni-app 实现Android原生APP-云打包集成神策详细教程
- 九章算法面试题87 最小子数组
- 屌丝的24个特征,看看自己中了几枪
热门文章
- mysql datetime类型按天查询_mysql 时间相关sql , 按天、月、季度、年等条件进行查询...
- 大数据之Kafka入门简介
- java 线程 状态 图_Java提高——多线程(一)状态图
- eclipse的java帮助文档_java在Eclipse中文apidoc帮助文档导入.doc
- mysql 文件系统规划_Mysql的文件系统规划以及日志配置
- PHP使用CURL抓取页面
- 使用spring的@autowired注解,无法实例化dao
- 获取Spring容器管理的Bean工具类
- 大数据开发你需要知道的十个技术
- 1.7.08:字符替换