Pythonで1つの英数字の文字列内にある数字の合計を見つけるプログラム
「0」から「9」までの数字と小文字の英字を含む英数字の文字列があるとします。 sに存在する数の合計を見つける必要があります。数字が連続している場合は、それらを1つの数字と見なします。
したがって、入力がs ="hello25world63power86"のような場合、25 + 63 + 86 =174
であるため、出力は174になります。これを解決するには、次の手順に従います-
-
ret:=0、curr:=0
-
sの各chについて、実行します
-
chが数字の場合、
-
curr:=10 * curr +(整数としてのch)
-
-
それ以外の場合
-
ret:=ret + curr
-
curr:=0
-
-
-
ret+currを返す
例
理解を深めるために、次の実装を見てみましょう
from string import digits def solve(s): ret = 0 curr = 0 for ch in s: if ch in digits: curr = 10 * curr + int(ch) else: ret += curr curr = 0 return ret + curr s = "hello25world63power86" print(solve(s))
入力
"hello25world63power86"
出力
174
-
リストの累積合計を見つけるPythonプログラム
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 −リストが与えられたので、累積合計でリストを作成する必要があります。 次に、以下の実装のソリューションを見てみましょう- 例 # cumulative sum def Cumulative(l): new = [] cumsum = 0 for element in l: cumsum += element new.append(cumsum) &
-
配列の合計を見つけるPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 入力として配列が与えられた場合、与えられた配列の合計を計算する必要があります。 ここでは、ブルートフォースアプローチに従うことができます。つまり、リストをトラバースし、各要素を空の合計変数に追加します。最後に、合計の値を表示します。 以下で説明するように、組み込みの合計関数を使用して別のアプローチを実行することもできます。 例 # main arr = [1,2,3,4,5] ans = sum(arr,n) print ('Sum of the array is '