2025-09-28 22:16:18 +09:00

27 lines
607 B
Python

def draw(N: int, before: list[str]) -> list[str] :
after = [[" "] * (2 * 2 * N - 1) for _ in range(2 * N)]
for i in range(N):
after[i][N:N+2*N-1] = before[i]
k = 0
for i in range(N, 2 * N):
after[i][:2*N] = before[k]
after[i][2 * N:2 * N+len(before[k])] = before[k]
k += 1
if 2 * N == n:
return after
return draw(2 * N, after)
n = int(input())
basic = [[" ", " ", "*", " ", " "], [" ", "*", " ", "*", " "], ["*", "*", "*", "*", "*"]]
if n == 3:
result = basic
else:
result = draw(3, basic)
for i in result:
print("".join(i))