数値の合計を一桁左になるまで再帰的に計算することになっている問題を解決しようとしています。私のプログラムは2つの非常に特殊なテストで失敗します(10^15)桁です。ロジックは小さな入力(< 10^15)のために働いています。ここで数値大文字の小文字の小文字の和
は私のコードは
所望の出力の形式は
import sys
test_cases=int(input())
number_single=list(range(0,10))
while(test_cases!=0):
digit_sum=0
summation1=0
summation2=0
sub_case=int(input())
while(sub_case!=0):
length,number=map(int,sys.stdin.readline().split())
summation=length*number
summation1+=summation
sub_case=sub_case-1
digit_sum,digit_sum1=summation1,summation1
while(digit_sum not in number_single):
digit1_sum=digit_sum%10
digit_sum=int(digit_sum/10)
digit_sum=digit1_sum+digit_sum
print(digit_sum)
test_cases=test_cases-1
ある数は17654、出力は他の理解の欠如5.
ようこそStackOverflow。ヘルプドキュメントの投稿ガイドラインを読み、それに従ってください。 [最小、完全で検証可能な例](http://stackoverflow.com/help/mcve)がここに適用されます。コードを投稿して問題を正確に記述するまでは、効果的にお手伝いすることはできません。具体的には、すべての関連情報を転記に含める必要があります。つまり、4つのリンクはすべて無効です(アクセスが拒否されました)。 – Prune
まず、コードは実行されません。インデントが正しくありません。クリーンなロジックが欠けていることを考えると、あなたが意図したことは本当に分かりません。たとえば、3つの入力コマンドがある場合、1つだけが保証されているように見えます。入力の量を入力し、必要に応じて入力そのものを入力するのでしょうか? – Prune
1つのプロセスに対して2つの合計ループがあるのはなぜですか? – Prune