Pythonについて0から教えてください
■ このスレッドは過去ログ倉庫に格納されています
0246デフォルトの名無しさん
2005/11/27(日) 02:56:54pythonでの比較はアレだけど、一応作ってみた。
import sys,re
def check_val(tree,ans,val=0):
if len(tree)!=3:
return False
elif len(tree[1])+len(tree[2])==0:
return ans==val+tree[0]
else:
return check_val(tree[1],ans,val+tree[0]) or check_val(tree[2],ans,val+tree[0])
in_str=sys.stdin.read()
in_val,in_tree=re.search("\s*(\d+)\s+\((.*)\)",in_str.replace("\n","")).groups()
in_tree=eval( in_tree.replace("(",",(") )
print {True:"yes",False:"no"}[check_val(in_tree,int(in_val))]
■ このスレッドは過去ログ倉庫に格納されています