數字序列中某一位的數字

2021-09-12 05:38:17 字數 579 閱讀 1682

// 面試題44:數字序列中某一位的數字

// 題目:數字以0123456789101112131415…的格式序列化到乙個字串行中。在這

// 個序列中,第5位(從0開始計數)是5,第13位是1,第19位是4,等等。請寫一

// 個函式求任意位對應的數字。

static int digit_at(uint32_t index)

int digits = 1;

while(true)

if(index < numbers * digits)

return _digit_at(index, digits);

index -= digits * numbers;

digits++;

}return -1;

}static int _digit_at(int index, int digits)

int end = digits - index % digits;

for(int i = 1; i < end; ++i)

return number % 10;

}

數字序列中某一位的數字

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位的數字。序...

數字序列中某一位的數字

面試題44 數字以0123456789101112131415 的格式序列化到乙個字串行中。在這個序列中,第5位 從0開始計數 是5,第13位是1,第19位是4,等等。請寫乙個函式,求任意第n位對應的數字。比如查詢序列的第1001位是什麼數字?1.序列的前10位是0 9這10個數字,沒有查過要查詢的...