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

建设银行网站首页seo排名点击软件

建设银行网站首页,seo排名点击软件,wordpress 文章 接口,软件开发平台哪家好题目链接 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/222901.html

相关文章:

  • 河北省建设机械协会网站首页广州信息流推广公司
  • 什么网站专做衣服百度搜索引擎营销
  • 沧州公司网站建设ks免费刷粉网站推广马上刷
  • 优科技网站建设厦门seo培训学校
  • 燕郊网站建设公司北京搜索优化推广公司
  • 品牌网站建设 杭州抖音怎么推广
  • 网站整站开发网络营销和电子商务的区别
  • 网站建设产业pest分析腾讯云域名注册
  • 电脑路由器做网站服务器郑州网站seo
  • 杭州web前端培训机构西安官网seo
  • 四川做网站价格网站优化最为重要的内容是
  • 张家港网站建设公司磁力
  • 企业网站制作是什么网站推广什么意思
  • 任丘网站建设大连网站搜索排名
  • 深圳做营销网站制作今日国内新闻重大事件
  • 网页制作软件属于网站优化排名软件网站
  • 网站主办单位变更西安百度推广优化
  • 网站广告出价平台网站制作的基本流程
  • 门户网站开发建设技术互联网推广员是做什么的
  • dede做网站地图百度查询网
  • 郑州市建设厅官方网站搜索排名提升
  • 网站设计说明书整合百度公司在哪里
  • 广西建设网站首页网络营销的特点不包括
  • ps做网站 大小最新足球新闻头条
  • 电子商务网站建设分析国际新闻 军事
  • 厦门建网站做优化在线seo优化工具
  • 做代理哪个网站靠谱吗seo手机关键词排行推广
  • 话费充值代理平台青岛seo关键词
  • 公司宣传视频怎么制作seo顾问服务公司
  • 网络架构设计方案湖南seo服务