[C++] 백준 17478번 풀이 (재귀함수가 뭔가요?)

정민경·2023년 2월 10일
0

baekjoon

목록 보기
31/57
post-thumbnail

- 문제 (17478번) : 재귀함수가 뭔가요?

  • 입력 받은 N번 만큼 특정 문장을 반복하는 챗봇 만들기.
    • 문장 :
      • "재귀함수가 뭔가요?"
        "잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.
        마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.
        그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어."
        ...
        라고 답변하였지.

- 입력 및 출력

[ 입력 ]

  • 출력을 원하는 재귀 횟수 N 입력 ( 1 ≤ N ≤ 50 )

[ 출력 ]

  • 입력받은 재귀 횟수에 따른 챗봇 출력문 출력

- 문제 풀이

  • 반복되는 문장이

    "재귀함수가 뭔가요?"
    ...
    " ~ 선비가 찾아와서 물었어."

    가 한번 반복된 후, N번 반복 후

    "라고 답변하였지"

    가 N번 반복되는 구조다.

    또한 문장들 앞에 underbar ( " _ " ) 역시 재귀로 불리는 횟수 * 4 씩 출력이 되도록 작성하면 된다.

  • 따라서 underbar를 출력할 때 재귀로 부르는 함수 하나 ( " Bar ( int x ) " ) 와, 문장을 출력할 때 재귀로 부르는 함수 하나 ( " Print ( int x ) " ) 를 구현한 후, 규칙에 맞춰 출력하면 된다.

  • 문장 출력 전에는 반드시 Bar() 가 한번 불린다.
  • " 라고 답변하였지. " 는 모든 반복문장이 출력된 후 N 번 출력된다.

- 최종 코드

0개의 댓글