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