Baekjoon 문제 풀기 (2446번 : 별 찍기 - 9) Python

2446번 : 별 찍기 - 9

1. 문제읽기


규칙찾기

문제에서 제시하는 조건을 잘 생각해서 규칙을 찾아야 한다.

처음에는 공백/별/공백 순으로 출력이 되어있는 줄 알고 제출했는데 출력 오류가 떠서 실패했다.
규칙은 각자 편한대로 찾으면 되는데, 나같은 경우는 별이 줄어드는 구간과 별이 늘어나는 구간을 따로 떼어놓고 규칙을 찾아주었다.
반복문을 생각하고 규칙을 찾으면 어렵지 않다.

자체 테스트 케이스를 여러번 넣어보지 않았다면 n-i나 n-j 구간에 5-i , 5-j를 집어넣고 채점을 했을 것이다.
다행히 오류를 발견해서 수정했다.
두번째 시도로 오른쪽 공백을 없애니까 성공했다.

2. 제출 코드


n = int(input())

for i in range(n, 0, -1):
    print(" "*(n-i)+"*"*(2*i-1))

for j in range(2, n+1):
    print(" "*(n-j)+"*"*(2*j-1))

3. 공부할 것


댓글남기기