美文网首页
440. 字典序的第K小数字

440. 字典序的第K小数字

作者: 来到了没有知识的荒原 | 来源:发表于2022-01-20 11:16 被阅读0次

    440. 字典序的第K小数字

    十叉树

    typedef long long ll;
    class Solution {
    public:
        int getcount(int prefix, ll n){
            int count=0;
            ll cur=prefix;
            ll nxt=prefix+1;
            while(cur<=n){
                count += min(n+1, nxt)-cur;
                cur*=10;
                nxt*=10;
            }
            return count;
        }
        int findKthNumber(int n, int k) {
            int p=1, prefix=1;
            while(p<k){
                int count=getcount(prefix,n);
                if(p+count>k){
                    prefix*=10;
                    p++;
                }else{
                    prefix++;
                    p+=count;
                }
            }
            return prefix;
        }
    };
    

    相关文章

      网友评论

          本文标题:440. 字典序的第K小数字

          本文链接:https://www.haomeiwen.com/subject/alixhrtx.html