반응형
문제
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
입력
첫째 줄에 N이 주어진다. N은 항상 3×2k 수이다. (3, 6, 12, 24, 48, ...) (0 ≤ k ≤ 10, k는 정수)
출력
첫째 줄부터 N번째 줄까지 별을 출력한다.
풀이
import sys
input = sys.stdin.readline
n = int(input())
star = [[' ' for _ in range(n*2)] for _ in range(n)]
def create(c, r, size):
if size == 3:
star[c][r] = "*"
star[c+1][r-1] = star[c+1][r+1] = '*'
for i in range(-2, 3):
star[c+2][r-i] = '*'
else:
size2 = size//2
create(c, r, size2)
create(c+size2, r-size2, size2)
create(c+size2, r+size2, size2)
create(0, n-1, n)
for s in star:
print("".join(s))
반응형
'Develop > 알고리즘' 카테고리의 다른 글
[백준/Python] Bronze IV #19944 뉴비의 기준은 뭘까? (0) | 2023.06.19 |
---|---|
[백준/Python] Silver II #14496 그대, 그머가 되어 (0) | 2023.06.19 |
[백준/Python] Silver I #11660 구간 합 구하기 5 (0) | 2023.06.18 |
[백준/Python] Silver I #1991 트리 순회 (0) | 2023.06.18 |
[백준/Python] Gold V #11000 강의실 배정 (0) | 2023.06.18 |
Comment