僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
1から9までの、ランダムな順序のダブらない数字9つ、
をすべて判定する、昨日と違う方法を探す。
n1+n2+...+n9の足し算と(n1*n2*...*9)の階乗を45や362880と比較する
だけでは、重複は排除できないようだ。
ランダムな順序での1..9の加減乗除で値を百にできるよう、
スクリプトを変更。何も指定しなければ[1,2,...9]とする。
値の数は一定しないようだ。
$ python3 dumb.py 1 2 9 8 6 4 3 7 5 1 + 2 + 9 * 8 + 6 + 4 + 3 + 7 + 5 = 100 1 + 2 + 9 * 8 + 6 * 4 + 3 - 7 + 5 = 100 1 + 2 - 9 * 8 / 6 + 4 + 3 * 7 * 5 = 100.0 1 + 2 * 9 + 8 - 6 + 4 * 3 * 7 - 5 = 100 1 - 2 + 9 + 8 + 6 * 4 * 3 + 7 + 5 = 100 1 - 2 + 9 * 8 + 6 - 4 * 3 + 7 * 5 = 100 1 - 2 + 9 * 8 + 6 * 4 + 3 + 7 - 5 = 100 1 - 2 + 9 * 8 / 6 + 4 * 3 * 7 + 5 = 100.0 1 - 2 * 9 + 8 * 6 / 4 + 3 * 7 * 5 = 100.0 1 - 2 * 9 + 8 / 6 * 4 * 3 * 7 + 5 = 100.0 1 - 2 * 9 * 8 / 6 / 4 + 3 * 7 * 5 = 100.0 1 * 2 + 9 + 8 - 6 * 4 + 3 * 7 * 5 = 100 1 * 2 + 9 * 8 + 6 + 4 + 3 * 7 - 5 = 100 1 * 2 - 9 + 8 / 6 * 4 * 3 * 7 - 5 = 100.0 1 * 2 - 9 - 8 + 6 + 4 + 3 * 7 * 5 = 100 1 * 2 * 9 + 8 + 6 * 4 * 3 + 7 - 5 = 100 1 * 2 * 9 + 8 * 6 - 4 + 3 + 7 * 5 = 100 1 / 2 + 9 * 8 + 6 / 4 + 3 * 7 + 5 = 100.0
それにしても根本がしっかりしていないためか、 どんどん汚くなってゆく。
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。