코딩 연습/백준 코드

별찍기(7)-2777.py

퀀텀리프하는 개발자 2023. 10. 15. 15:59
import sys
n_input = sys.stdin.readline().rstrip()
def star(n):
    # 중앙배열을 하기 위해, 좌측 부분에 공백을 만들고 별이 생성되게 하였습니다.
    # 별은 (해당 줄 번호 x2)-1의 형태이며, 공백은 해당 줄 번호에서 i만큼 감소 하는 형태입니다.
    # 반복이 되기 때문에, for 구문으로 나타내었습니다.
    # 상단  
    for i in range(1, n + 1):
        spaces = " " * (n - i)     # 공백
        stars = "*" * (2 * i - 1)  # 별
        print(spaces + stars)
    # 절반을 기준으로 상단과 하단을 구분하였습니다.
    # 하단
    for i in range(n - 1, 0, -1):
        spaces = " " * (n - i)
        stars = "*" * (2 * i - 1)
        print(spaces + stars)


n = int(n_input)
star(n)