当前位置: 首页 > news >正文

建设网站如何进行网站备案宁德app开发

建设网站如何进行网站备案,宁德app开发,外贸看的英文网站,私人pk赛车网站怎么做题目链接 Leetcode.2571 将整数减少到零需要的最少操作数 rating : 1649 题目描述 给你一个正整数 n n n ,你可以执行下述操作 任意 次: n n n 加上或减去 2 2 2 的某个 幂 返回使 n n n 等于 0 0 0 需要执行的 最少 操作数。 如果 x 2 i x 2^…

题目链接

Leetcode.2571 将整数减少到零需要的最少操作数 rating : 1649

题目描述

给你一个正整数 n n n ,你可以执行下述操作 任意 次:

  • n n n 加上或减去 2 2 2 的某个

返回使 n n n 等于 0 0 0 需要执行的 最少 操作数。

如果 x = 2 i x = 2^i x=2i 且其中 i ≥ 0 i \geq 0 i0 ,则数字 x x x 2 2 2 的幂。

示例 1:

输入:n = 39
输出:3
解释:我们可以执行下述操作:

  • n 加上 20 = 1 ,得到 n = 40 。
  • n 减去 23 = 8 ,得到 n = 32 。
  • n 减去 25 = 32 ,得到 n = 0 。
    可以证明使 n 等于 0 需要执行的最少操作数是 3 。
示例 2:

输入:n = 54
输出:3
解释:我们可以执行下述操作:

  • n 加上 21 = 2 ,得到 n = 56 。
  • n 加上 23 = 8 ,得到 n = 64 。
  • n 减去 26 = 64 ,得到 n = 0 。
    使 n 等于 0 需要执行的最少操作数是 3 。
提示:
  • 1 ≤ n ≤ 1 0 5 1 \leq n \leq 10^5 1n105

解法:贪心

我们用 c n t cnt cnt 表示连续的 1 1 1 的个数 , a n s ans ans 表示操作数。

此时遇到的是 0 0 0

  • 如果此时 c n t = 1 cnt = 1 cnt=1,那么此时直接选择减去这个 1 1 1 即可,即 a n s = a n s + 1 ans = ans + 1 ans=ans+1 c n t = 0 cnt = 0 cnt=0
  • 如果此时 c n t > 1 cnt > 1 cnt>1,那么此时有多个连续的 1 1 1,所以我们选择相加,将这多个 1 1 1 变为 1 1 1 1,即 a n s = a n s + 1 ans = ans + 1 ans=ans+1 c n t = 1 cnt = 1 cnt=1

最后如果 c n t = 1 cnt = 1 cnt=1,说明还有一个 1 1 1 ,直接减去即可,即 a n s = a n s + 1 ans = ans + 1 ans=ans+1

如果 c n t > 1 cnt > 1 cnt>1,说明最后还有多个连续的 1 1 1,我们需要用两步将其减为 0 0 0,即 a n s = a n s + 2 ans = ans + 2 ans=ans+2

时间复杂度: O ( l o g n ) O(logn) O(logn)

C++代码:

class Solution {
public:int minOperations(int n) {int ans = 0 , cnt = 0;while(n){if(n & 1) cnt++;else{if(cnt == 1) ans++ , cnt = 0;else if(cnt > 1) ans++ , cnt = 1;}n >>= 1;}if(cnt == 1) ans++;else if(cnt > 1) ans += 2;return ans;}
};
http://www.yayakq.cn/news/138510/

相关文章:

  • 中国建设执业网站养老院网站建设的费用
  • 企业网站模板文件管理玛多县网站建设公司
  • asp.net网站开发实训免费asp网站源码
  • 足球网站模板软件销售具体怎么做的
  • 自己的网站怎么和百度做友链中国移动idc建设网站
  • 设备上哪个网站做外贸推广西地那非片的功能主治说明书
  • 中国上海门户网站公众号凡客诚品 v官网
  • zf厂手表网站企业网站关于我们
  • 建设银行网站怎么查开户行wordpress建站菜单栏 二级标题
  • 哈尔滨建站怎么做宝塔wordpress ssl证书
  • 建设网站需要申请报告秦皇岛网站制作电话
  • 中学网站系统源码找个做网站的 优帮云
  • 大气娱乐搞笑网站源码住房公积金服务
  • 云南网站制作报价图书馆门户网站建设方案
  • 旅游网站网页设计方案seo系统培训课程
  • 分销系统网站外包小程序开发注意事项
  • 企业自建网站 备案青岛开发区网站建设多少钱
  • 网上书店网站建设的说明书jsp做的网站如何查看
  • 网页设计网站题目做建材上哪个网站比较好
  • 网站制作大概多少钱宣化网站制作公司
  • 关于外贸公司的网站甘肃省建设厅执业资格注册中心网站
  • 大连福佳新城2026年建站吗公司简介模板怎么做
  • 北京国互网网站建设报价平面设计线上兼职
  • 网站正在建设中 英语翻译加油站项目建设背景
  • 子网站 两微一端的建设方案android开发入门教程
  • 自己建网站卖鞋美食网站需求分析
  • 河北提供网站建设公司电话高端手机网站建设需要多少钱
  • 微企点做网站怎么样学网站建设需要几年
  • 湖北省建设安全管理站网站国内免费做网页工具
  • 查找邮箱注册过的网站营销网站建设多钱