カードの並び替えのプログラムで4枚のカードを選択(入力)し、その4枚のカードを24通り(重複省く)並び替え
合計値を出力します。
入力例 2 9 3 8 #カードの選択
出力例 [130, 175, 121, 175, 121, 130, 67, 67, 121, 112, 121, 112] #カード合計値
・92 + 38 = 130 ・92 + 83 = 175 ・93 + 28 = 121
・93 + 82 = 175 ・98 + 23 = 121 ・98 + 32 = 130 ・39 + 28 = 67
・38 + 29 = 67 ・82 + 39 = 121 ・89 + 23 = 112 ・89 + 32 = 121
・83 + 29 = 112
以下のソースコードを試したのですが、値が67,175,131,122,76,166と表示され計算値の値とは異なってしまいます。for文の書き方に誤りがあるのは推測できるのですが、なぜこの値が出力されるのかが詳しく分かりません。
ご教授いただけますと助かります。
python
1 2nyuuryoku = input().split() 3 4suuti = [int(s) for s in nyuuryoku] 5total = [] 6suuti2 = suuti 7for i in range(3): 8 x = (10 * suuti[i]) + suuti[i+1] 9 x2 =(10 * suuti[i+1]) + suuti[i] 10 for j in range(3): 11 y = (10 * suuti2[j]) + suuti[j+1] 12 y2 = (10 * suuti2[j+1]) + suuti[j] 13 ka = x + y 14 ka2 = x2 + y2 15 total.append(ka) 16 total.append(ka2) 17print(total) 18
回答1件
あなたの回答
tips
プレビュー