1 回答

TA貢獻1719條經(jīng)驗 獲得超6個贊
這是我的解決方案,它檢查將給定數(shù)字分成 3 部分的所有可能組合,并檢查前兩個分量的總和是否等于第三個分量。
def correct_number(x):
str_nmbr = str(x)
for result_split in range(len(str_nmbr)-2):
part_3 = int(str_nmbr[-result_split-1:])
for components_split in range(len(str_nmbr)-2-result_split):
part_2 = int(str_nmbr[1+components_split: -result_split-1])
part_1 = int(str_nmbr[:components_split+1])
if part_1 + part_2 == part_3:
return True
return False
print(correct_number(9999198)) # True
正如作者所要求的,這里給出了如何確定數(shù)字部分的視覺解釋,給定數(shù)字“1234567”
1 2 3 4 5 6 7:
第一個循環(huán)選擇第二個分隔符
1 2 3 4 5 6|7
第二個循環(huán)選擇第一個
1 2|3 4 5 6|7
1 2 3|4 5 6|7
1 2 3 4|5 6|7
1 2 3 4 5|6|7
. . . 然后我們將第二個第二個分隔符向后移動 1 步
1 2 3 4 5|6 7
我們繼續(xù)移動第一個分隔符
1|2 3 4 5|6 7
1 2|3 4 5|6 7
1 2 3|4 5|6 7
. . .
添加回答
舉報