[ BOJ / Python ] 2448번 별 찍기 - 11

황승환·2021년 10월 1일
0

Python

목록 보기
9/498

바로 이전에 C++로 풀어보았던 문제를 Python으로 다시 풀어보았다. 앞서 풀었던 로직 그대로 해결하였기 때문에 설명은 생략하겠다.
[ BOJ / C++ ] 2448번 별 찍기

Code

n=int(input())
star=[[' ']*2*n for _ in range(n)]
def Solution(h, y, x):
    if h==3:
        star[y][x]='*'
        star[y+1][x-1]='*'
        star[y+1][x+1]='*'
        for i in range(x-2, x+3):
            star[y+2][i]='*'
    else:
        nh=h//2
        Solution(nh, y, x)
        Solution(nh, y+nh, x-nh)
        Solution(nh, y+nh, x+nh)
Solution(n, 0, n-1)
for r in star:
    print("".join(r))

profile
꾸준함을 꿈꾸는 SW 전공 학부생의 개발 일기

0개의 댓글