上小学的儿子问了我这么一道数学题: 1) 使用+,-,×,/,(,和)六个操作符; 2) 使用操作数5,5,5,5,5; 3) 要求每个操作数/操作符只使用一次。 列出所有可能的表达式,并计算每个表达式的值。 【注意】要排除诸如 +-,()或55这种操作数/操作符连一起的情况;也要排除5(,)(,)5,(5)等情况。 【脚本】版本使用python2.7x。演示脚本如下: 【运行结果】 共找到 210 表达式: (5+5-5*5)/5 = -3 (5+5-5/5)*5 = 45 (5+5-5)*5/5 = 5 (5+5-5)/5*5 = 5 (5+5*5-5)/5 = 5 (5+5*5/5)-5 = 5 (5+5*5)-5/5 = 29 (5+5*5)/5-5 = 1 (5+5/5-5)*5 = 5 (5+5/5*5)-5 = 5 (5+5/5)-5*5 = -19 (5+5/5)*5-5 = 25 (5+5)-5*5/5 = 5 (5+5)-5/5*5 = 5 (5+5)*5-5/5 = 49 ... (省略) ... 看来,脚本还是可以帮着干不少活的^_^。 在城里 2016.01.05 |