728x90
문제 설명
재귀함수의 인자를 두 개로 설정하여 a는 재귀함수의 총 호출횟수를 뜻하고 b는 현재 재귀함수가 몇번째 재귀함수인지를 뜻한다. a와 b의 값이 같으면 마지막 재귀함수라는 뜻이고 같지 않으면 두번째 인자에 b에 1을 더하여 b+1을 넣어서 다시 재귀함수를 호출했다.
전체 코드
def func(a,b):
for i in range(b):
print('____', end='')
print('"재귀함수가 뭔가요?"')
if a == b:
for i in range(b):
print('____', end='')
print('"재귀함수는 자기 자신을 호출하는 함수라네"')
for i in range(b):
print('____', end='')
print('라고 답변하였지.')
return 0
else:
for i in range(b):
print('____', end='')
print('"잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.')
for i in range(b):
print('____', end='')
print('마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.')
for i in range(b):
print('____', end='')
print('그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어."')
func(a,b+1)
for i in range(b):
print('____', end='')
print('라고 답변하였지.')
return 0
def main():
num = int(input())
num2 = 1
print('어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다.')
print('"재귀함수가 뭔가요?"')
print('"잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.')
print('마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.')
print('그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어."')
func(num,num2)
print('라고 답변하였지.')
if __name__ == "__main__":
main()
728x90
반응형
'코딩테스트 > 파이썬' 카테고리의 다른 글
백준 2630번 색종이 만들기 (0) | 2021.01.31 |
---|---|
백준 11729번 하노이 탑 이동 순서 (0) | 2021.01.30 |
백준 1629번 곱셈 (0) | 2021.01.28 |
프로그래머스 level1 크레인 인형뽑기 게임 (0) | 2021.01.26 |
프로그래머스 level1 다트 게임 (2) | 2021.01.25 |