프로그래밍 공부

BOJ/백준 17478번 재귀함수가 뭔가요? 본문

Problem Solving/Baekjoon Online Judge

BOJ/백준 17478번 재귀함수가 뭔가요?

khj1999 2020. 10. 29. 14:00

www.acmicpc.net/problem/17478

 

17478번: 재귀함수가 뭔가요?

평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대

www.acmicpc.net

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
using namespace std;
int cnt = 0;
void print(int n) {
    for(int i = 0; i < n; i++cout << "____";
}
 
void solve(int n) {
    if (n == 0) {
        print(cnt);
        cout << "\"재귀함수가 뭔가요?\"\n";
        print(cnt);
        cout <<  "\"재귀함수는 자기 자신을 호출하는 함수라네\"\n";
        print(cnt);
        cout << "라고 답변하였지.\n";
        cnt--;
        return;
    }
    print(cnt);
    cout << "\"재귀함수가 뭔가요?\"\n";
    print(cnt);
    cout << "\"잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어.\n";
    print(cnt);
    cout << "마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지.\n";
    print(cnt);
    cout << "그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어.\"\n";
    cnt++;
    solve(n - 1);
    print(cnt);
    cout << "라고 답변하였지.\n";
    cnt--;
}
 
int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);
    int n;
    cin >> n;
    cout << "어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다.\n";
    solve(n);
    return 0;
}
cs

문자열 "____"을 "----"로 멋대로 착각하고 4번이나 틀렸다.
앞으로 문제에서 주어지는 문자열은 복붙해서 쓰는걸로.

'Problem Solving > Baekjoon Online Judge' 카테고리의 다른 글

BOJ/백준 1786번 찾기  (0) 2021.06.10
BOJ/백준 17496번 스타후르츠  (0) 2021.04.11
BOJ/백준 1012번 유기농 배추  (0) 2020.10.23
BOJ/백준 2576번 홀수  (0) 2019.05.16
BOJ/백준 2566번 최댓값  (0) 2019.05.16
Comments