아무리 읽어봐도 이해가 되지 않아서... 다른사람의 코드를 봄.
문제 해석이 어려워서 어떻게 풀어야할지 감도 안잡히고 어려웠다...
🔗풀이 참고
https://study-all-night.tistory.com/5
# 별 찍는 재귀 함수
def draw_star(n) :
global Map
if n == 3 :
Map[0][:3] = Map[2][:3] = [1]*3
Map[1][:3] = [1, 0, 1]
return
a = n//3
draw_star(n//3)
for i in range(3) :
for j in range(3) :
if i == 1 and j == 1 :
continue
for k in range(a) :
Map[a*i+k][a*j:a*(j+1)] = Map[k][:a] # 핵심 아이디어
N = int(input())
# 메인 데이터 선언
Map = [[0 for i in range(N)] for i in range(N)]
draw_star(N)
for i in Map :
for j in i :
if j :
print('*', end = '')
else :
print(' ', end = '')
print()
🔗백준 - 별 찍기 - 10
https://www.acmicpc.net/problem/2447