LeetCode简单题之下载插件
题目
小扣打算给自己的 VS code 安装使用插件,初始状态下带宽每分钟可以完成 1 个插件的下载。假定每分钟选择以下两种策略之一:
使用当前带宽下载插件
将带宽加倍(下载插件数量随之加倍)
请返回小扣完成下载 n 个插件最少需要多少分钟。
注意:实际的下载的插件数量可以超过 n 个
示例 1:
输入:n = 2
输出:2
解释:
以下两个方案,都能实现 2 分钟内下载 2 个插件
方案一:第一分钟带宽加倍,带宽可每分钟下载 2 个插件;第二分钟下载 2 个插件
方案二:第一分钟下载 1 个插件,第二分钟下载 1 个插件
示例 2:
输入:n = 4
输出:3
解释:
最少需要 3 分钟可完成 4 个插件的下载,以下是其中一种方案:
第一分钟带宽加倍,带宽可每分钟下载 2 个插件;
第二分钟下载 2 个插件;
第三分钟下载 2 个插件。
提示:
1 <= n <= 10^5
来源:力扣(LeetCode)
解题思路
题目的做法不难,通常成长类的通关游戏都是先升级各种战斗力然后才和boss决战,在这里也一样,我们可以先升级带宽,然后再计算时间。当然这个需要一个简单的证明,那就是在n比较小的时候,线性结果等价于指数的结果,很显然在这道题中,比如n=1或者2的时候是符合的,当n大于2的时候就更不用说了,指数函数已经能够甩线性函数很远。
class Solution:def leastMinutes(self, n: int) -> int:return math.ceil(math.log2(n))+1
LeetCode简单题之下载插件相关推荐
- LeetCode简单题之基于排列构建数组
题目 给你一个 从 0 开始的排列 nums(下标也从 0 开始).请你构建一个 同样长度 的数组 ans ,其中,对于每个 i(0 <= i < nums.length),都满足 ans ...
- LeetCode简单题之Excel 表中某个范围内的单元格
题目 Excel 表中的一个单元格 (r, c) 会以字符串 "" 的形式进行表示,其中: 即单元格的列号 c .用英文字母表中的 字母 标识. 例如,第 1 列用 'A' 表示, ...
- LeetCode简单题之增量元素之间的最大差值
题目 给你一个下标从 0 开始的整数数组 nums ,该数组的大小为 n ,请你计算 nums[j] - nums[i] 能求得的 最大差值 ,其中 0 <= i < j < n 且 ...
- LeetCode简单题之二进制矩阵中的特殊位置
题目 给你一个大小为 rows x cols 的矩阵 mat,其中 mat[i][j] 是 0 或 1,请返回 矩阵 mat 中特殊位置的数目 . 特殊位置 定义:如果 mat[i][j] == 1 ...
- LeetCode简单题之设计 Goal 解析器
题目 请你设计一个可以解释字符串 command 的 Goal 解析器 .command 由 "G"."()" 和/或 "(al)" 按某种 ...
- LeetCode简单题之检查两个字符串数组是否相等
题目 给你两个字符串数组 word1 和 word2 .如果两个数组表示的字符串相同,返回 true :否则,返回 false . 数组表示的字符串 是由数组中的所有元素 按顺序 连接形成的字符串. ...
- LeetCode简单题之找出数组的最大公约数
题目 给你一个整数数组 nums ,返回数组中最大数和最小数的 最大公约数 . 两个数的 最大公约数 是能够被两个数整除的最大正整数. 示例 1: 输入:nums = [2,5,6,9,10] 输出: ...
- LeetCode简单题之排列硬币
题目 你总共有 n 枚硬币,并计划将它们按阶梯状排列.对于一个由 k 行组成的阶梯,其第 i 行必须正好有 i 枚硬币.阶梯的最后一行 可能 是不完整的. 给你一个数字 n ,计算并返回可形成 完整阶 ...
- LeetCode简单题之棒球比赛
题目 你现在是一场采用特殊赛制棒球比赛的记录员.这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分. 比赛开始时,记录是空白的.你会得到一个记录操作的字符串列表 ops,其中 ops[ ...
最新文章
- WEB浏览器兼容(转)
- ORACLE DBA的职责
- BZOJ1117 [POI2009]救火站Gas 贪心
- 第六届 蓝桥杯 省赛 Java B组 牌型总数
- c语言输入n个数按大小输出,输入n个整数并输出,用c语言表达
- 类似TH养车的电商系统设计思路
- slice与substring与substr
- ESP8266使用方法
- (转)你确定你的交易系统最快?
- 倾斜摄影Smart3D建模培训视频 附文档数据下载
- PCA主成分分析(原理+例子)
- 转转转转转转转转转转转转转转转转转转转转转转转转转
- 测试软件能批量转换成pdf吗,三大PDF转换软件对比测评
- QT-ico图片的生成
- SQL数据库权限禁止授予deny
- 概率统计笔记:共轭分布
- OpenVas简介与安装
- 免费是王道!盘点国外八大知名杀毒软件产品
- 【软件测试】思维开拓—用软件测试的思维测试QQ好友是在线或者离线
- centos 监视文件变动脚本
热门文章
- IDEA设置单个文件、单个包、单个项目的编码格式
- 大数据中用到的新的数据类型bigint、decimal、smallint、tinyint
- 管理虚拟机的艺术——有备无患
- bert [unused*] 特殊符号
- ERROR: epmd error for host 192: badarg (unknown POSIX error)
- 基于javaGUI的文档识别工具制作
- 不是都需要ARM吗?
- tensorflow-yolov4实施方法
- 图像分类:CVPR2020论文解读
- 【laravel7.x中文文档】Redis