🔗문제 풀러가기
단계별로 풀어보기 단계 21의 5번째 문제이다.
위 사진은 칸토어 집합의 실행 결과이다.
n의 칸토어 집합은
(n-1의 칸토어집합) (n-1의 칸토어집합의 길이만큼의 공백) (n-1의 칸토어집합) 으로 이루어진 것을 알 수 있다.
이를 이용해 재귀함수를 이용하여 문제를 해결하였다.
#include <iostream>
#include <cmath>
using namespace std;
void Cantor(int n)
{
int size = pow(3, n - 1);
if (n == 0)
{
cout << "-";
return;
}
Cantor(n - 1);
for (int i = 0; i < size; i++)
{
cout << " ";
}
Cantor(n - 1);
}
int main()
{
int n;
while (cin >> n)
{
Cantor(n);
cout << endl;
}
}