-
[알고리즘 문제 풀이][재귀] 백준 17478번 - 재귀함수가 뭔가요?자료구조&알고리즘/알고리즘 - 언어 기초 2021. 11. 22. 22:25
백준 17478번 재귀함수가 뭔가요? 문제입니다.
(재귀 연습)
- 문제 설명: https://www.acmicpc.net/problem/17478
- 문제 풀이:
본 문제는 재귀 함수 구현 연습이 필요한 사람들이 풀면 좋을 문제입니다.
자기 자신을 호출하는 함수를 구현하여 재귀가 동작할 때 어떻게 진행되는지를 실제 출력을 통해 확인해보면 좋을 것 같습니다.
- 코드:
def recursion(n, depth): print("____"*depth, end="") print('"재귀함수가 뭔가요?"') if n == 0: print("____"*depth, end="") print('"재귀함수는 자기 자신을 호출하는 함수라네"') else: print("____"*depth, end="") print('"잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.') print("____"*depth, end="") print("마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.") print("____"*depth, end="") print('그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어."') recursion(n-1, depth+1) print("____"*depth, end="") print('라고 답변하였지.') print("어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다.") recursion(int(input()), 0)
위의 코드는 print 시에 end="" 인자를 사용하였지만, print 안에서 + 를 이용하여 문자열을 합치는 방법도 가능합니다.
- 실수 포인트 & 반례:
1. 텍스트 앞에 "____" 를 써야하지만, "----" 로 잘못 쓴 경우 틀렸습니다를 받을 수 있습니다.
'자료구조&알고리즘 > 알고리즘 - 언어 기초' 카테고리의 다른 글
Python 출력시 앞에 0 채우는 방법 (0) 2024.02.02 [알고리즘] 백준 폰으로도 풀 수 있는 문제 모음 (0) 2021.10.14 [알고리즘 문제 풀이][정렬] 백준 1026번 - 보물 (*) (0) 2021.10.06 [알고리즘 문제 풀이][수학] 백준 2869번 - 달팽이는 올라가고 싶다 (0) 2021.09.23 [알고리즘 문제 풀이][수학] 백준 1712번 - 손익분기점 (1) 2021.09.07 댓글