查詢無限整數序列的第n位1,2,3,4,5,6,7,8,9,10,11,...
本題源自leetcode 400
-------------------------------------------------------------
思路:1 1-9 有9 位數,10-99 有180 位。因此我們首先找到這個位數是幾位數。
2 在找到這個數,然後確定這個數的第幾位是我們要找的
程式碼:
int findNthDigit(int n) { long base = 9,digits = 1; // 1 計算這個數是幾位數 while(n - base * digits > 0){ n -= base * digits; base *= 10; digits++; } //2 計算這個數是多少 int index = n % digits; if(index == 0) index = digits; long num = 1; for(int i = 1; i < digits; i++){ num *= 10; } num += (index == digits) ? n / digits -1 : n / digits; //3 找到這個數的第幾位是我們想要的 for(int i = index; i < digits; i++) num /= 10; return num % 10; }
相關推薦
查詢無限整數序列的第n位1,2,3,4,5,6,7,8,9,10,11,...
本題源自leetcode 400 ------------------------------------------------------------- 思路:1 1-9 有9 位數,10-99 有180 位。因此我們首先找到這個位數是幾位數。 2 在找到這個數,然後
輸入一個矩陣,按照從外向裡以順時針的順序依次打印出每一個數字,例如,如果輸入如下4 X 4矩陣: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 則依次打印出數字1,2,
public ArrayList<Integer> printMatrix(int [][] matrix) { ArrayList<Integer> l1= new ArrayList<>(); &
java 輸入一個矩陣,按照從外向裡以順時針的順序依次打印出每一個數字,例如,如果輸入如下矩陣: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 則依次打印出數字1,2,
題目描述 輸入一個矩陣,按照從外向裡以順時針的順序依次打印出每一個數字,例如,如果輸入如下矩陣: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 則依次打印出數字1,
輸入一個矩陣,按照從外向裡以順時針的順序依次打印出每一個數字,例如,如果輸入如下矩陣: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 則依次打印出數字1,2,3,4,8
import java.util.ArrayList; import java.util.Arrays; public class Solution { public ArrayList<Integer> printMatrix(int [][] mat
計算1!+2!+3!+4!+5!+6!+7!+8!+9!+10!+......的值(需注意整型變數的範圍)
#include<stdio.h> //***(1)*** //計算1!+2!+3!+4!+5!+6!+7!+8!+9!+10!的值 int func(int n)//一個數的階乘 { if(n>0) return n*func(n-1); if
Java_whilefor-->計算 ∑1+∑2+∑3+∑4+∑5+∑6+∑7+∑8+∑9+∑10
計算 ∑1+∑2+∑3+∑4+∑5+∑6+∑7+∑8+∑9+∑10 思路:多個求和的相加,先考慮單個求和的計算;這個很簡單通過求和公式 (1+n)*n/2 就可以得到 接下來就是開始對n的值進行分析判斷 n屬於1~10 通過for迴圈來實現 整體程式碼如下:TestWh
ACMNO.21 C語言-逆序輸出 輸入10個數字,然後逆序輸出。 輸入 十個整數 輸出 逆序輸出,空格分開 樣例輸入 1 2 3 4 5 6 7 8 9 0
題目描述 輸入10個數字,然後逆序輸出。 輸入 十個整數 輸出 逆序輸出,空格分開 樣例輸入 1 2 3 4 5 6 7 8 9 0 樣例輸出 0 9 8 7 6 5 4 3 2 1 提示 陣列?堆疊? 來源/分類 C語言
94、tensorflow實現語音識別0,1,2,3,4,5,6,7,8,9
結果 test amp building pre cti fun ner edi ‘‘‘ Created on 2017年7月23日 @author: weizhen ‘‘‘ #導入庫 from __future__ import division,print_func
c語言 對10個數組元素依次賦值為0 1 2 3 4 5 6 7 8 9,要求按逆序輸出
對10個數組元素依次賦值為0,1,2,3,4,5,6,7,8,9,要求按逆序輸出。 解:程式:
1,2,3,4,5,6,7,8,9共9個數組成3個分數
MixCMul最小公倍數函式,方便分數計算,避免小數 printmol 將一個固定陣列得到三個分數, 判斷兩分數相加是否等於第三個Grial 陣列的各種排列 不說了,看程式碼:static void showArr(int arr[], int len = 9) {
1 2 3 4 5 6 7 8 9 =110 在左邊數字之間加入運算子(+、-或不加),使得等式成立
1 2 3 4 5 6 7 8 9 = 110; 請看上邊的算式,為了使等式成立,需要在數字間填入加號或者減號(可以不填,但不能填入其它符號)。之間沒有填入符號的數字組合成一個數,例如:12+34+56+7-8+9 就是一種合格的填法;123+4+5+67-8
1 2 3 4 5 6 7 8 9 = 110,在數字間填入加號或者減號(可以不填,但不能填入其它符號)使等式成立。
一共有3^8種可能。 答案: 成功:12+34+56+7-8+9 = 110 成功:12+3+45+67-8-9 = 110 成功:12-3+4-5+6+7+89 = 110 成功:1+2+34+5+67-8+9 = 110 成功:1-2+3+45-6+78-9 = 110
n進位制小數 將任意十進位制正小數分別轉換成2,3,4,5,6,7,8,9進位制正小數,小數點後保留8位,並輸出。
/* n進位制小數 將任意十進位制正小數分別轉換成2,3,4,5,6,7,8,9進位制正小數,小數點後保留8位,並輸出。 例如:若十進位制小數為0.795,則輸出: 十進位制正小數 0.7950
求 1-2+3-4+5-6+7-8....M 的結果算法
次數 pre blog spa rgs static console line span 1 static void Main(string[] args) 2 { 3 /** 4 * 算法題: 5 * 求 1-2+3-4+5-6+7
山科java實驗3-3編寫一個方法,返回一個double型的二維陣列,陣列中的元素通過解析字串引數獲得。例如,字串引數:“1,2;3,4,5;6,7,8”,對應的陣列為: d[0,0
編寫一個方法,返回一個double型的二維陣列,陣列中的元素通過解析字串引數獲得。例如,字串引數:“1,2;3,4,5;6,7,8”,對應的陣列為: d[0,0] = 1.0 d[0,1
寫一個函數計算但參數為n(n很大)時的值1-2+3-4+5-6+7……+n。(考慮程序執行效率)
參數 color n) col sys class n-1 == code 1 private static void jisuan(int n) { 2 int sum=0; 3 if(n%2==0){ 4 sum=-(n/2)
計算第K個能表示(2^i * 3^j * 5^k)的正整數(i,j,k為整數)?其前7個滿足此條件的數分別是1,2,3,4,5,6,8
public class Main { public static void main(String[] args) { int[] a = new int[1501]; a[1] = 1; TreeMap<Integer, Integ
python練習題,寫一個方法 傳進去列表和預期的value 求出所有變量得取值可能性(例如list為[1,2,3,4,5,6,12,19],value為20,結果是19+1==20只有一種可能性),要求時間復雜度為O(n)
num bubuko com pri def 代碼 data- 取值 .com 題目:(來自光榮之路老師)a+b==valuea+b+c=valuea+b+c+d==valuea+b+c+d+...=valuea和b....取值範圍都在0-value寫一個方法 傳進去列
python遞歸練習:生成一個n級深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},寫一個函數定義n級
生成 結果 dict 深度 遞歸 ict nco strong ron 結果#encoding = utf-8#題目:#生成一個n級深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},寫一個函數定義n級a=[1,2,3
python遞迴練習:生成一個n級深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},寫一個函式定義n級
結果#encoding = utf-8#題目:#生成一個n級深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},寫一個函式定義n級a=[1,2,3,4,5,6] def fun(n,i=0,dict1={}): if i ==n-1: dict1[a[