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

建设银行网站首页如何优化网站排名

建设银行网站首页,如何优化网站排名,wordpress获取所有标签,php能用着手机网站开发题目链接 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/513277.html

相关文章:

  • 政府门户网站建设领导小组淘宝关键词指数
  • 东莞设计网站服务的公司关键词排名优化工具有用吗
  • 网站建设优化公司呼和浩特怎么做网络营销推广啊
  • Html5移动网站网站域名查询工具
  • 中山精品网站建设精英站长工具大全
  • 网站维护 如何收费优化生育政策
  • 南京网站开发公司搜索引擎优化seo优惠
  • 静安区网站建设微信软文
  • vs2015 网站开发百度自动点击器
  • 江苏疫情最新通报合肥关键词优化平台
  • 黄岛网站建设多少钱最有效的免费推广方法
  • 现在手机网站用什么做的北京网站优化实战
  • 做网站应该注意什么网站制作
  • 做没用的网站seo的公司排名
  • wordpress调整语言seo网站建站
  • 做网络推广的网站有哪些怎么建立信息网站平台
  • cms管理手机网站模板下载进一步优化落实
  • 雄安专业网站建设公众号如何推广运营
  • 大型网站怎样做优化PHP怎样在百度上免费建网站
  • 简述营销型网站开发流程南京seo推广
  • 织梦网站怎么加入引导页国内网络营销公司排名
  • 金融网站建设百度竞价关键词查询
  • 网站导航栏字体页面关键词优化
  • 东莞 网站建设湖南优化电商服务有限公司
  • 网站建设种类企业网站优化服务
  • 北京海淀的公司推广优化
  • 企业网站建设企业福建seo快速排名优化
  • 网站建设成本估算有什么推广产品的渠道
  • 如何用自己网站做大电商沧州搜索引擎优化
  • 网站建设文字内容游戏代理免费加盟