剑指 Offer 44:数字序列中某一位的数字

简介: 剑指 Offer 44:数字序列中某一位的数字

题目

题目链接

数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从下标0开始计数)是5,第13位是1,第19位是4,等等。

请写一个函数,求任意第n位对应的数字。

示例 1:

输入:n = 3
输出:3

示例 2:

输入:n = 11
输出:0

解题

方法一:

题目链接

class Solution {
public:
    int findNthDigit(long n) {
        for (int i = 1;; i++) {
            if (i * pow(10, i) > n) {
                return to_string(n / i)[n % i] - '0';
            }
            n += pow(10, i);
            //cout << n <<endl;
    }
    }
};
相关文章
|
7月前
剑指 Offer 11:旋转数组的最小数字
剑指 Offer 11:旋转数组的最小数字
54 1
|
7月前
剑指 Offer 46:把数字翻译成字符串
剑指 Offer 46:把数字翻译成字符串
50 0
剑指 Offer 46:把数字翻译成字符串
|
7月前
剑指 Offer 50:第一个只出现一次的字符
剑指 Offer 50:第一个只出现一次的字符
39 0
|
7月前
剑指 Offer 03:数组中重复的数字
剑指 Offer 03:数组中重复的数字
28 0
|
7月前
剑指 Offer 20:表示数值的字符串
剑指 Offer 20:表示数值的字符串
44 0
|
7月前
剑指 Offer 57 - II:和为s的连续正数序列
剑指 Offer 57 - II:和为s的连续正数序列
38 0
|
7月前
剑指 Offer 57:和为s的两个数字
剑指 Offer 57:和为s的两个数字
45 0
剑指offer 45. 数字序列中某一位的数字
剑指offer 45. 数字序列中某一位的数字
62 0
|
存储
剑指offer 63. 和为S的两个数字
剑指offer 63. 和为S的两个数字
83 0

热门文章

最新文章