Python 每日一題(計算數值和)

2021-10-12 16:31:22 字數 918 閱讀 2054

計算 s = a + aa + aaa + ... +

設定乙個變數 m , 從 0 開始,假設 a 為 9:

第1次迴圈:m = 10 * m + a,結果是:a;【m = 10 * 0 + 9 = 9】

第2次迴圈:m = 10 * m + a,結果是:aa;  【m = 10 * 9 + 9 = 99】

第3次迴圈:m = 10 * m + a,結果是:aa;  【m = 10 * 99 + 9 = 999】

第 n 次迴圈:m = 10 * m + a,結果是:aa...a (n個a);  【m = 10 * 9(n-1 個 9 ) + 9 = 99...9(n 個 9)】

# 解法1:

def sum_numbers(a, n):

'''計算 n 個 a aa aaa ... n個a的和

:param a: 表示 [1, 9] 之間的整數

:param n: 表示 n 個整數字

:return: none

'''total = 0 # 記錄最後的和

m = 0 # 表示每次迴圈生成的 幾個a 的數

if a > 0 and a < 10 and n > 0:

for i in range(n):

m = 10 * m + a

total += m

if i < n - 1:

print(m, end=' + ')

else:

print(m, end=' = ')

print(total)

sum_numbers(5, 5)

5 + 55 + 555 + 5555 + 55555 = 61725
結語

每日一題Python

給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。示例 給定 nums 2,7,11,15 target 9 因為 nums 0 nums 1 2 ...

藍橋杯python每日一題 階乘計算

試題 基礎練習 資源限制 時間限制 1.0s 記憶體限制 512.0mb 問題描述 輸入乙個正整數n,輸出n 的值。其中n 1 2 3 n。演算法描述 n 可能很大,而計算機能表示的整數範圍有限,需要使用高精度計算的方法。使用乙個陣列a來表示乙個大整數a,a 0 表示a的個位,a 1 表示a的十位,...

每日一題 47 計算糖果

a,b,c三個人是好朋友,每個人手裡都有一些糖果,我們不知道他們每個人手上具體有多少個糖果,但是我們知道以下的資訊 a b,b c,a b,b c.這四個數值.每個字母代表每個人所擁有的糖果數.現在需要通過這四個數值計算出每個人手裡有多少個糖果,即a,b,c。這裡保證最多只有一組整數a,b,c滿足所...