Code retiré pour des raisons personnelles sera donné pour diverses raisons.
Thème: Cinq problèmes qui disqualifieront un programmeur s'ils ne sont pas résolus dans l'heure
Python est incroyable car il peut résoudre des problèmes qui considèrent à l'origine des algorithmes sans réfléchir.
S'il vous plaît laissez-moi savoir comment le résoudre correctement car je voudrais faire référence aux articles d'autres personnes!
Ce que je fais, c'est essayer toutes les combinaisons avec ʻeval`, qui est un système qui mourra si vous négligez de vérifier les arguments.
Au début, je pensais que c'était une opération à quatre règles!
q5.py
import itertools as it
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9]
num_str = map(str, nums)
#ops = ["+", "-", "/", "*", ""]
ops = [" + ", " - ", ""]
opss = it.tee(ops, len(nums) - 1)
for op_c in it.product(*opss):
evl = num_str[0]
for idx, op in enumerate(op_c):
evl += op + num_str[idx+1]
rst = eval(evl)
if rst == 100:
print evl
Recommended Posts