사용자 도구

사이트 도구


ps:problems:boj:17478

재귀함수가 뭔가요?

ps
링크acmicpc.net/…
출처BOJ
문제 번호17478
문제명재귀함수가 뭔가요?
레벨실버 5
분류

기초

시간복잡도O(n)
인풋사이즈n<=50
사용한 언어Python
제출기록29200KB / 68ms
최고기록56ms
해결날짜2021/12/23

풀이

  • 그냥 간단한 구현문제.
  • 재귀함수를 써서 푸는 것을 의도한 문제인것 같지만, 그냥 패턴을 찾아서 반복으로 푸는 것도 간단하다.
  • 시간복잡도는 O(n).

코드

"""Solution code for "BOJ 17478. 재귀함수가 뭔가요?".

- Problem link: https://www.acmicpc.net/problem/17478
- Solution link: http://www.teferi.net/ps/problems/boj/17478
"""

HEADER = '어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다.'
BEFORE = (
    '"재귀함수가 뭔가요?"',
    '"잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.',
    '마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.',
    '그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어."',
)
MAIN = (
    '"재귀함수가 뭔가요?"',
    '"재귀함수는 자기 자신을 호출하는 함수라네"',
    '라고 답변하였지.',
)
AFTER = '라고 답변하였지.'


def main():
    N = int(input())
    print(HEADER)
    for i in range(N):
        prefix = '_' * (i * 4)
        for line in BEFORE:
            print(prefix, line, sep='')
    prefix = '_' * (N * 4)
    for line in MAIN:
        print(prefix, line, sep='')
    for i in reversed(range(N)):
        print('_' * (i * 4) + AFTER)


if __name__ == '__main__':
    main()

토론

댓글을 입력하세요:
X​ A U R Z
 
ps/problems/boj/17478.txt · 마지막으로 수정됨: 2022/01/01 13:57 저자 teferi