Nth Digit
来源:互联网 发布:免费三级域名申请 编辑:程序博客网 时间:2024/06/06 00:47
Find the nth digit of the infinite integer sequence 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...
Note:
n is positive and will fit within the range of a 32-bit signed integer (n < 231).
Example 1:
Input:3Output:3
Example 2:
Input:11Output:0Explanation:The 11th digit of the sequence 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ... is a 0, which is part of the number 10.
思路:可视化,发现
1~9 1位 9个数(9-1+1), 1*9 digit
10~99 2位 90个数(99-10+1), 2*90 digit
100~999 3位 900个数(999-100+1), 3*900 digit
这是有规律的事情,那么找第n个digit,那么首先得确定是在哪个len区间,然后在这个区间内找第几个数,然后再找这个数的第几位就行了。
start是用来记录每个区间的第一个数。首先循环减去每个区间,然后len递增,start*10,count*10.
public class Solution { public int findNthDigit(int n) { if(n <=0) return 0; long count = 9; int start = 1; int len = 1; while(n > len*count){ n -= len*count; len++; start *= 10; count *= 10; } start += (n-1)/len; return String.valueOf(start).charAt((n-1)%len)-'0'; }}
0 0
- Nth Digit
- Nth Digit
- Nth Digit
- Nth Digit
- Nth Digit
- find the nth digit
- find the nth digit
- find the nth digit
- find the nth digit
- hdoj1597find the nth digit
- find the nth digit
- find the nth digit
- 【Leetcode】400. Nth Digit
- 400. Nth Digit
- LeetCode 400 Nth Digit
- [Leetcode] Nth Digit
- leetcode 400. Nth Digit
- 400. Nth Digit
- u-boot第二阶段代码(4)
- iOS10,Xcode8上传AppStore的时候,显示构建版本无效
- React之组件嵌套
- CSS浮动(float,clear)通俗讲解
- OpenGL ES(5) - 添加动作
- Nth Digit
- 深度学习之NN->CNN
- css阴影效果
- 5种方式让你的日常例会更加高效
- OpenGL ES(6) - 响应触摸事件
- 2016 年最受欢迎的编程语言是什么?
- Java1.7新特性
- 2016-09-23 eclipe 这个报错<%@ taglib prefix="c" uri="http://java.sun.com/jsp/core" %>
- 金旭亮老师网易MOOC课程目录