[白俊]9095:1,2,3加
質問する
再帰概念
1.2.3で数値を選択した場合は、1.2.3で数値を選択します.
この数の和の場合、==数を選択するたびにその数から減算され、残りが0の場合はcountを上げる必要があります.
に答える
import sys
t = int(sys.stdin.readline())
count = 0
def sol(n):
count = 0
if n == 0:
return 1 # 합이 되면 return 1
if n < 0:
return 0 # 합이 되지 않으면 return 0
for i in range(1, 4):
count += sol(n-i) # count에 계속 쌓이고 마지막에 count를 return 해줌
return count
for i in range(t):
a = int(sys.stdin.readline())
print(sol(a))
草。
import sys
t = int(sys.stdin.readline())
count = 0
def sol(n):
global count
if n == 0:
count += 1
if n < 0:
return
for i in range(1, 4):
sol(n-i) # 1, 2, 3을 선택하고 빼줌
for i in range(t):
a = int(sys.stdin.readline())
sol(a)
print(count)
Reference
この問題について([白俊]9095:1,2,3加), 我々は、より多くの情報をここで見つけました https://velog.io/@letsbebrave/백준-9095-1-2-3-더하기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol