본문 바로가기
코딩테스트 문제풀이(Python)

백준 10991번 문제풀이

by chanfficial 2022. 4. 18.

10991. 별 찍기 - 16

 

 

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

 

 

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

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

 

 

ex)

입력 :

4

출력 :

   *
  * *
 * * *
* * * *

 

 

 

 

풀이

n = int(input())

for i in range(1, n+1, 1):
    print(' '*(n-i) + '* '*i)

- n이 3일때, *이 한 개이면 왼쪽의 공백은 두 칸, *이 두 개이면 왼쪽의 공백은 한 칸, *이 세 개이면 왼쪽의 공백은 없는 것으로 * + ' '(공백) = n 이라는 규칙을 찾을 수 있다.

그렇기 때문에 i를 *의 개수로 두고, 1부터 n+1까지 1씩 증가하면서 반복할 때 n-i의 값을 공백에 곱하며 *에는 i를 곱하여 출력하게 했다. 이때 *들이 서로 한 칸씩 털어져서 출력되기 때문에 '*'이 아닌 '* '로 출력했다.

'코딩테스트 문제풀이(Python)' 카테고리의 다른 글

백준 10178번 문제풀이  (0) 2022.04.19
백준 10995번 문제풀이  (0) 2022.04.18
백준 2446번 문제풀이  (0) 2022.04.17
백준 2445번 문제풀이  (0) 2022.04.17
백준 2523번 문제풀이  (0) 2022.04.17