본문 바로가기
📊 Algorithm/BOJ

⚠︎ 백준 - 4779 칸토어 집합🏠

by 정람지 2024. 4. 10.

재귀 단계를 끝내자~2

 

재귀 단계

피보나치 수 역시 단순 for문으로도 구할 수 있지만, 학습을 위해 재귀를 써 봅시다.

www.acmicpc.net


4779

⚠︎ 칸토어 집합

티어 : 🥈3

분류 : 재귀

 

으 이런..

print(*배열명) 하면..

요소 사이에 공백이 들어간다...

또 생각 없이 씀..

"".join("배열명") 

고..

import sys

def Cantor(start,n):
    for i in range(start+3**(n-1),start+3**(n-1)*2):
        Cantor_list[i] = ' '
    if n != 1:
        Cantor(start,n-1)
        Cantor(start+3**(n-1)*2,n-1)
      
while True:
    try:
        N = int(sys.stdin.readline())
        if N == 0 :
            print('-')
        else:
            Cantor_list = ['-' for _ in range(3**N)] # 0 - 3**N -1
            Cantor(0,N)
            print("".join(Cantor_list))
    except: 
        break

입력 끝을 따로 명시하지 않는 경우에는 

저케 줄바꿈을 int로 바꾸는 부분에 오류를 내서 프로그램을 끝내면 된다

 


쯧 또 한번에 못 맞다니...