Programming Language/Python3.6
[python 파이썬] 백준 2444번 코드 풀이
yen31
2024. 6. 1. 02:19
문제
예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.
입력
첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.
출력
첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다
.
코드 풀이
<이번 문제 핵심!!>
- 각 줄은 1개부터 시작하여 2개씩 늘어나는 구조
- 한 줄에 2 * N - 1개의 별이 찍히면 반대로 2개씩 감소하는 구조로 별이 찍히게 된다.
- 찍히는 별의 모양은 마름모 모양으로 출력
- 각 출력되는 별은 가운데 정렬한 모양으로 찍혀야 하며, 이는 앞에 공백 출력으로 구현
✔️ range 함수의 범위를 역순으로 지정하고 싶을 때는 세번째 파라미터로 음수를 넣어줌!
- range(시작값, 끝값, -1) : 시작값부터 끝값까지 역순으로 출력
- 별의 개수가 증가하는 부분 → for문
- 별의 개수가 감소하는 부분 → for문
# N 입력받기
N = int(input())
# 별의 개수가 증가하는 부분
for i in range(1, n + 1):
print(" " * (n - i) + "*" * (2 * i - 1))
# 별의 개수가 감소하는 부분
for i in range(n - 1, 0, -1): # 역순으로 출력
print(" " * (n - i) + "*" * (2 * i - 1))
https://github.com/yenyen31/BaekjoonAlgorithm
반응형