PS/BOJ

[Python] 2444번 별 찍기 - 7

s_omi 2024. 4. 21. 09:25
728x90
반응형
SMALL
 

2444번: 별 찍기 - 7

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

www.acmicpc.net

 

문제

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

 

입력

첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8)

 

출력

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

 

 

예제

입력 출력
5      *
   ***
  *****
 *******
*********
 *******
  *****
   ***
     *

 

 

코드

n = int(input())
star = 1
empty = n-1

for i in range(n*2-1):
  if i < n-1:
    for j in range(empty):
      print(' ', end='')
    empty -= 1

    for k in range(star):
      print('*', end='')
    star += 2
    print()
  
  else:
    for j in range(empty):
      print(' ', end='')
    empty += 1
    
    for k in range(star):
      print('*', end='')
    star -= 2
    print()

 

 

다른 사람의 풀이

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))​

 

 

반복문의 증감에 -1을 넣으면 반대로 됨!

728x90
반응형
LIST

'PS > BOJ' 카테고리의 다른 글

[Python] 1789번 수들의 합  (0) 2024.07.14
[Python] 10988번 팰린드롬인지 확인하기  (0) 2024.04.21
[JAVA] 15650번 N과 M (2)  (1) 2024.02.11
[JAVA] 15649번 N과 M (1)  (0) 2024.02.04
[JAVA] 11653번 소인수분해  (0) 2024.01.30