문제 풀이
이 문제는 1부터 n까지 재귀 함수를 통해 출력하는 문제임.
재귀 함수의 핵심은
1) 재귀 함수 내에 if 조건과 return문을 통해 재귀 함수를 멈춰주는 것
2) 다음 함수를 조건에 맞게 적절하게 불러주는 것
이렇게 두 가지라고 할 수 있고, 이 원리는 다른 재귀함수 문제에도 통용됨.
이 문제는 n까지 출력하는 것이므로 n을 만나게되면 재귀 함수 호출을 그만두도록 조건을 걸면 됨.
문제풀이
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int n;
void recursive(int a)
{
if (a==n)
{
cout<<a;
return;
}
cout<<a<<endl;
recursive(a+1);
}
int main()
{
cin>>n;
recursive(1);
return 0;
}
'C C++ > C C++ 알고리즘 문제 기타' 카테고리의 다른 글
[C/C++] 코드업 1904 : (재귀함수) 두 수 사이의 홀수 출력하기 (0) | 2022.10.04 |
---|---|
[C/C++] 코드업 1902 : (재귀 함수) 1부터 n까지 역순으로 출력하기 (0) | 2022.10.04 |
[C/C++] 마라톤 (1) | 2022.09.28 |
[C/C++] 석차 구하기 (0) | 2022.09.28 |
[C/C++] 유쾌한 점퍼 (Jolly Jumper) (0) | 2022.09.27 |
댓글