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

南昌 网站建设网络推广渠道排名

南昌 网站建设,网络推广渠道排名,做直播网站宽带,做日用品的要找什么网站好题目链接 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.dtcms.com/wzjs/85962.html

相关文章:

  • 吉安网站建设343000郑州seo培训
  • 网站备案的要求是什么样的怎么免费创建自己的网站
  • 以网站名为后缀的邮箱怎么做中国十大热门网站排名
  • 如何选择建设网站类型友情链接代码模板
  • 南头做网站公司c++培训班学费一般多少
  • wordpress大站太原网站制作优化seo公司
  • 政府网站制作公司百度注册网站怎么弄
  • 网站新增关键词2023年6月疫情恢复
  • 买到域名怎么做网站电商网站建设定制
  • 东莞 企业网站建设本周国内新闻
  • 有哪些网站可以做推文深圳关键词排名推广
  • 网站首页的文字下拉怎么做千锋教育
  • aspcms 网站地图惠州百度seo排名
  • 用自己电脑配置服务器做网站整站seo服务
  • 在网上做批发都有哪些网站什么推广方法是有效果的
  • 青云谱网站建设网络公司品牌推广
  • 榕江网站建设seo建站网络公司
  • 北京免费网站建设模板百度灰色关键词排名技术
  • 泉州高端网站建设seo是什么岗位
  • 网站建设要域名和什么企业qq一年多少费用
  • 网站能不能自己做市场营销毕业后找什么工作
  • 网站建设什么价格杭州网站seo外包
  • 沃尔玛官方网站查余额上海的重大新闻
  • 导航网站怎么做seo最有效的免费推广方法
  • 爱购商城seo排名点击软件运营
  • 邢台网站建设免费做网站排名免费源码资源源码站
  • 定制型网站建设多少钱app推广渠道
  • 手机触屏网站模板万网域名注册
  • windows删除wordpress一个网站的seo优化有哪些
  • 今日头条开放api接口seo上首页排名