最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實(shí)現(xiàn)1-9數(shù)組形成的結(jié)果為100的所有運(yùn)算式的示例

 更新時(shí)間:2017年11月03日 08:41:56   作者:wkcagd  
下面小編就為大家?guī)?lái)一篇Python實(shí)現(xiàn)1-9數(shù)組形成的結(jié)果為100的所有運(yùn)算式的示例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

問(wèn)題:

編寫一個(gè)在1,2,…,9(順序不能變)數(shù)字之間插入+或-或什么都不插入,使得計(jì)算結(jié)果總是100的程序,并輸出所有的可能性。例如:1 + 2 + 34–5 + 67–8 + 9 = 100。

from functools import reduce
 
operator = { 
 1: '+', 
 2: '-', 
 0: '' 
} 
 
base = ['1', '2', '3', '4', '5', '6', '7', '8', '9'] 
 
def isHundred(num): 
 
 #轉(zhuǎn)化為8位3進(jìn)制數(shù),得到運(yùn)算符數(shù)組 
 arr = [] 
 for index in range(8): 
  index = 7 - index 
  arr.append(num // (3 ** index)) 
  num -= (num // (3 ** index)) * (3 ** index) 
 arr = map(lambda x: operator[x], arr) 
 
 #合并得到運(yùn)算式 
 formula = reduce(lambda x, y: x + y, zip(base, arr)) 
 
 formula = list(formula) 
 formula.append('9') 
 
 formula = ''.join(formula) 
 #計(jì)算運(yùn)算式結(jié)果 
 res = eval(formula) 
 return res, formula 
 
 
if __name__ == '__main__': 
 #所有可能的結(jié)果 
 total = 3 ** 8
 for i in range(total): 
  res, formula = isHundred(i) 
  if res == 100: 
   print(formula+' = 100')

 結(jié)果:

/usr/bin/python3.5 /home/kang/workspace/Qt3d/test.py 
123+45-67+8-9 = 100
123+4-5+67-89 = 100
123-45-67+89 = 100
123-4-5-6-7+8-9 = 100
12+3+4+5-6-7+89 = 100
12+3-4+5+67+8+9 = 100
12-3-4+5-6+7+89 = 100
1+23-4+56+7+8+9 = 100
1+23-4+5+6+78-9 = 100
1+2+34-5+67-8+9 = 100
1+2+3-4+5+6+78+9 = 100

以上這篇Python實(shí)現(xiàn)1-9數(shù)組形成的結(jié)果為100的所有運(yùn)算式的示例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

高青县| 裕民县| 登封市| 龙里县| 临泉县| 于田县| 涟水县| 雅江县| 岢岚县| 策勒县| 南陵县| 印江| 雅江县| 松原市| 滕州市| 赤水市| 四子王旗| 喀什市| 巴彦淖尔市| 车险| 沙洋县| 新丰县| 绥江县| 塔河县| 龙海市| 博野县| 高唐县| 济阳县| 广德县| 黎川县| 梨树县| 广灵县| 潍坊市| 和林格尔县| 石楼县| 庆安县| 敖汉旗| 石屏县| 佛山市| 太仓市| 府谷县|