zoukankan      html  css  js  c++  java
  • 400 Nth Digit 第N个数字

    在无限的整数序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...中找到第 n 个数字。
    注意:
    n 是正数且在32为整形范围内 ( n < 231)。
    示例 1:
    输入:
    3
    输出:
    3
    示例 2:
    输入:
    11
    输出:
    0
    说明:
    第11个数字在序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ... 里是0,它是10的一部分。
    详见:https://leetcode.com/problems/nth-digit/description/
    C++:

    class Solution {
    public:
        int findNthDigit(int n)
        {
            long long len = 1, cnt = 9, start = 1;
            while (len * cnt < n)
            {
                n -= len * cnt;
                ++len;
                cnt *= 10;
                start *= 10;
            }
            start += (n - 1) / len;
            string t = to_string(start);
            return t[(n - 1) % len] - '0';
        }
    };
    

     参考:https://www.cnblogs.com/grandyang/p/5891871.html

  • 相关阅读:
    课程总结
    每日总结66
    每日总结65
    每日总结64
    每日总结63
    每日总结62
    每日总结61
    每日总结60
    偶滴点NET复习
    内部异常SocketException由于目标计算机积极拒绝
  • 原文地址:https://www.cnblogs.com/xidian2014/p/8854763.html
Copyright © 2011-2022 走看看