Python/백준 알고리즘
[백준][Python3] #2444. 별 찍기 - 7
2nan
2024. 2. 29. 16:05
728x90
코드 입력
# 제시된 숫자 (별 개수가 최대가 되는 라인)
num = int(input())
# 총 라인 수
max_ = 2*num-1
# 별 개수
value = 1
# 총 라인수만큼 루프문 생성
for i in range(1, max_+1):
# 총 라인 수와 별 개수가 다르다면 (공백이 포함된 라인일 경우)
if max_ != value:
# 공백 개수 생성
vacant = int((max_ - value) / 2)
print(f"{' '*vacant}{'*'*value}")
# 별 개수가 최대가 되는 라인 이전 줄일 경우
if num > i:
value += 2
# 별 개수가 줄어드는 라인일 경우
else:
value -= 2
else:
# 별 개수가 최대인 라인(다음 라인부터 별을 2개씩 차감 조정)
print('*'*max_)
value -= 2
Issue
문제
최초에 공백을 * 문자 뒤에 삽입했더니 출력 형식이 잘못되었다는 오류 발생
# 문제 발생
f"{' '*vacant}{'*'*value}{' '*vacant}"
# 별 뒤에 삽입하던 공백 제거
f"{' '*vacant}{'*'*value}"
해결
별 뒤에 삽입하던 공백을 제거했더니 문제 해결
출처 : 백준 Online Judge