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

网站设计培训班如何长沙网站制作

网站设计培训班如何,长沙网站制作,平台开发流程,做网站卖广告挣几百万给定一个整数 num,计算所有小于等于 num 的非负整数中数字 1 出现的个数。 示例 1: 输入:num 0 输出:0示例 2: 输入:num 13 输出:6 LCR 162. 数字 1 的个数 - 力扣(LeetCode&am…

给定一个整数 num,计算所有小于等于 num 的非负整数中数字 1 出现的个数。

示例 1:

输入:num = 0
输出:0

示例 2:

输入:num = 13
输出:6

LCR 162. 数字 1 的个数 - 力扣(LeetCode) 

暴力求解:复杂度太高

class Solution {public int digitOneInNumber(int num) {if (num < 1) {return 0;}int totalOnes = 0;for (int i = 1; i <= num; i++) {totalOnes += countOne(i);}return totalOnes;}public int countOne(int num){String str = Integer.toString(num);int count = 0;for (char c : str.toCharArray()) {if (c == '1') {count++;}}return count;}
}

参考那种滚轮密码锁。

我们设定当前位为cur,比如511322,当前位为3 ,那么我们不难发现,当前位为1时,个数有511*100种。  如果当前位为1,那么只有510*100+1*22种,当前位为0时,后三位为022,比100小,那么就只有511种。我们依次遍历这个数的各个位就行了。

class Solution {public int digitOneInNumber(int num) {int digit = 1, res = 0;int high = num / 10, cur = num % 10, low = 0;while(high != 0 || cur != 0) {if(cur == 0) res += high * digit;else if(cur == 1) res += high * digit + low + 1;else res += (high + 1) * digit;low += cur * digit;cur = high % 10;high /= 10;digit *= 10;}return res;   }
}

有点考研数学,做过一遍就会了。

http://www.dtcms.com/wzjs/505353.html

相关文章:

  • 一般的信息网站用什么做竞价网络推广外包
  • 网站网站制作服务引流最好的推广方法
  • 佛山专业做网站公司哪家好合肥网络优化公司有几家
  • 仿照别人的网站做违法吗站长工具忘忧草社区
  • 网站推广有什么好处以网络营销为主题的论文
  • .net作业做网站网站优化排名易下拉排名
  • 免费在线制作网页山东公司网站推广优化
  • 中国作文网官网电商运营seo
  • 网站建设开发ppt模板百度推广手机app下载
  • 阳城做网站网站怎么推广出去
  • wordpress主题软件杭州关键词优化测试
  • 建自己的网站用多少钱seo优化推广流程
  • canva 可画人物插画seo优化有哪些
  • 建筑图集网站07fs02图集今天刚刚发生的新闻
  • 娱乐网站制作武汉搜索推广
  • WordPress主题设置保存seo平台是什么
  • 网站建设的一般步骤包括小程序拉新推广平台
  • 凡客精选长沙专业竞价优化首选
  • WordPress网页加载时间seo优化标题
  • 建筑通seo建站公司
  • 阿里云 个人网站宁波seo费用
  • 商务网站建设总结如何建立网上销售平台
  • wordpress和卡密平台上海seo公司排名
  • 龙岩网站设计 信任推商吧做词百度信息流广告怎么投放
  • 企业网站建设哪家效果好域名权重
  • 做网站培训怎么知道自己的域名
  • 沈阳疫情来势凶猛广州网站营销seo费用
  • 北仑网站建设29gz如何推广一个项目
  • 宁波网站推广厂家电话南沙seo培训
  • 国家高新技术企业证书图片排名seo怎么样