數字按照0123456789101112131415161718192021...的順序排列。第5位(從0開始計數)為5,第13位為1,第19位為4…… 求任意第n位對應的數字
1int countofintegers(int
bit)211
return
9*factor*bit;12}
13int getbase(int
bit)
1421
return
base;22
}23int getbyindex(int number, int
idx)//得到數字number的第idx位(從右往左)上的數字,比如1253的第2位上的數字為5。
2429
return number%10;30
}31int digitatindex(int
n)//求任意第n為對應的數字
32else
break;43
}44int num=n/bit;
45int idx=n%bit;
46int
base=getbase(bit);//得到最開始的bit位的數字,比如最開始的1位數是0,最開始的2位數是10,最開始的3位數是100...
47return getbyindex(base+num, bit-idx);
48 }
數字序列中某一位的數字
面試題44 數字序列中某一位的數字 題目 數字以0123456789101112131415 的格式序列化到乙個字串行中。在這 個序列中,第5位 從0開始計數 是5,第13位是1,第19位是4,等等。請寫一 個函式求任意位對應的數字。static int digit at uint32 t inde...
數字序列中某一位的數字
012345678910.序列中,第n位數 def solution n if n 0 return 1 if n 10 return n i 2 確定是第幾位數 sums 10 ret 0while true 一位數 0 9 共10個字元 兩位數 10 99 共180個字元 三位數 100 999...
數字序列中某一位的數字
數字以0123456789101112131415 的格式序列化到乙個字串行中,在這個序列中。第五位 從0開始計數 是5,第13位是1,第19位是4,等等。請寫乙個函式,求任意第n位對應的數字。暴力解法,從0開始計數,數到第n位。以1001位為例子。因為序列前10位是0 9這10個只有1位的數字。序...