백준16505 별(파이썬)
백준16505 별(파이썬)
https://www.acmicpc.net/problem/16505
문제
출력 예제를 보고 별 찍는 규칙을 유추하여 별을 찍어 보자.
입력
첫 번째 줄에는 정수 N (0 ≤ N ≤ 10)이 주어진다.
출력
별 찍는 규칙에 따라 별을 출력한다.
각 줄 끝에는 필요없는 공백을 출력하지 않는다.
코드
N=int(input())
table=[[' ']*(1<<N) for _ in range(1<<N)]
def star(x,y,n):
if n==1:
table[x][y]='*'
return
n//=2
star(x,y,n)
star(x+n,y,n)
star(x,y+n,n)
star(0,0,1<<N)
for i in table:
print(''.join(i).strip())
풀이
n은 입력받을 숫자
table은 2**N 크기의 2차원 리스트
li는 n개의 숫자를 입력받아 저장할 리스트
재귀함수를 사용하여 별을 출력