반응형
내 해답)
def f(n): #빈칸 뚫어주는 함수
global square
k=3
while k<=n:
for i in range(n):
for j in range(n):
if ((i%k)//(k//3)==1)and((j%k)//(k//3)==1):
square[i][j]=" "
k*=3
N = int(input())
square = [["*"]*N for _ in range(N)]
#N*N 사이즈의 별직사각형 생성
f(N)
#함수 실행
for k in range(N):
for l in range(N):
print(square[k][l],end="")
if l==N-1:
print()
#순서대로 출력하고, 한줄이 끝나면 줄바꿈
리뷰)
별찍기 중 두 번째로 난이도 있는 문제, 분할 정복과 재귀를 이용하라고 써있긴 하지만 재귀 대신 반복을 사용해서 풀어보았다.
반응형
'Data Structure & Algorithm > Baekjoon Review' 카테고리의 다른 글
[BOJ] [25314] 코딩은 체육과목 입니다 (Python) (0) | 2023.09.04 |
---|---|
[BOJ] [5557] 1학년 (Python) (0) | 2023.02.20 |
[BOJ] [2439] 별 찍기 - 2 (Python) (0) | 2023.02.18 |
[BOJ] [2438] 별 찍기 - 1 (Python) (0) | 2023.02.17 |
[BOJ] [2557] Hello World (Python) (0) | 2023.02.17 |
댓글