〇前提・実現したいこと
Python初心者です。
ABC079C(https://atcoder.jp/contests/abc079/tasks/abc079_c)
についての質問です。
〇発生している問題・エラーメッセージ
↓のように、+のみをいれる際の再帰的な探索のコードは書くことができるのですが、return文を2つ(+-)に分岐させる書き方が分からず困っています。
〇該当のソースコード
def dfs(i, f, sum):
if i == 3:
if sum == 7:
return (f)
else:
return dfs(i + 1, f + "+" + s[i + 1], sum + int(s[i + 1]))
#return dfs(i + 1, f + "-" + s[i + 1], sum - int(s[i + 1]))
s = input()
print(dfs(0, s[0], int(s[0]))+"=7")
〇自分で調べたことや試したこと
https://qiita.com/kajirita2002/items/f81ff06d689ed85ac82d
で解説されている方のコードは見つけたのですが、returnを使った書き方ではないため、
そもそもなぜ再帰文にreturnを書く必要があるんだっけ…?
これは、どうしてreturnなしで再帰できているんだろ…?
といった状態です。
returnの使い分けについて、併せてお教えいただけると助かります。
〇使っているツールのバージョンなど補足情報
回答2件
あなたの回答
tips
プレビュー