본문 바로가기
코딩테스트/백준

백준 > 단계별로 풀어보기 > 심화 1 > 별 찍기 - 7

by 나는야석사 2024. 7. 18.

문제

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

입력

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.

출력

첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다.

예제 입력 1 복사

5

예제 출력 1 복사

    *
   ***
  *****
 *******
*********
 *******
  *****
   ***
    *

 

어려워서 검색했다.

상단 피라미드는 공백의 개수가 4, 3, 2, 1, 0으로 줄어들고 별의 개수가 1, 3, 5, 7, 9로 증가했다.

각각 N-i-1, 2i+1인데 이거 생각하는게 오래 걸렸다.

하단 피라미드는 더 오래 걸렸다.

공백이 1, 2, 3, 4로 증가하고 별의 개수가 7, 5, 3, 1로 감소했다.

각각 N-i, 2i-1이다.

이걸 생각 못하겠다.

 

N = int(input())

for i in range(N):
    print(" "*(N-i-1) + '*'*(2*i+1))

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

넘나 어려운 것..