언어는 과-학인가요?/python 파이썬

백준 골드 (2447번) 파이썬 - 별찍기

이원자 탄소 2022. 7. 27. 21:33
728x90
n=int(input()) #n 값 입력. 3^a꼴로 될 예정

def star(k):
    if k==3: #프렉탈의 가장 기본이 되는 사각형
        return ['***','* *','***']
    arr=star(k//3) #3이 아니라면 3으로 나눈 값을 star에 넣고 그걸 arr에 넣음.
    stars=[]
    for i in arr: #만약 n이 9라면, arr에는 *이 들어있는 배열이 들어있을 예정. 배열 크기는 3.
        stars.append(i*3) #n이 9라면 i는 k==3일때 리턴되는 값
    for i in arr:
        stars.append(i+' '*(k//3)+i) #공백은 k//3크기만큼
    for i in arr:
        stars.append(i*3)
    return stars #배열임
        


print("\n".join(star(n)))

 

728x90