剑指 Offer 43. 1~n 整数中 1 出现的次数 + 数位模拟 + 思维
2024-10-21 14:27:47
剑指 Offer 43. 1~n 整数中 1 出现的次数
Offer_43
题目描述
题解分析
java代码
package com.walegarrett.offer;
/**
* @Author WaleGarrett
* @Date 2021/2/8 9:29
*/
/**
* 题目详情:
* 输入一个整数 n ,求1~n这n个整数的十进制表示中1出现的次数。
* 例如,输入12,1~12这些整数中包含1 的数字有1、10、11和12,1一共出现了5次。
*/
public class Offer_43 {
public int countDigitOne(int n) {
int high = n/10,cur = n%10, low = 0;
int digital = 1;//digital表示数位
int res = 0;//1的个数
while(high!=0 || cur != 0){
if(cur == 0){
res += (high * digital);
}else if(cur == 1){
res += (high*digital + low +1);
}else res += (high+1) * digital;
low += cur * digital;
cur = high %10;
high /=10;
digital *= 10;
}
return res;
}
}
最新文章
- mybatis_个人总结
- NSURLConnection学习笔记
- Leetcode Odd Even Linked List
- row_number()函数
- 基于jQuery的web在线流程图设计器GooFlow
- 6.24AppCan移动开发者大会价值30万的展示机会归了谁?
- logstash multiline 把文件处理为单个 event
- mvc 微软票据验证
- SDK编程模板
- Spring Boot系列(一) Spring Boot介绍和基础POM文件
- 为什么range不是迭代器?range到底是什么类型?
- js杨辉三角控制台输出
- centos7 安装php7,报错cannot get uid for user nginx
- my.conf配置信息
- River Problem HDU - 3947(公式建边)
- [Version Control]—— Git如何使用
- ELK基础架构解说-运维笔记
- 阿里云服务器配置免费https服务
- SE Springer小组《Spring音乐播放器》软件需求说明之四
- 【TP3.2+onethink1.0】2个Ueditor 回显数据,第2个会把第1个覆盖
热门文章
- HttpServletResponse的学习
- POJ - 2406 Power Strings (后缀数组DC3版)
- Codeforces Round #570 (Div. 3) E. Subsequences (easy version) (搜索,STL)
- Uva 12436 Rip Van Winkle's Code
- CF1397-C. Multiples of Length
- MySQL 语句及其种类
- 关于FFT的一些理解,以及如何手工计算FFT加深理解和验证正确性
- Prometheus Monitoring Solution
- js debounce &; throttle All In One
- yarn global add !== yarn add global