본문 바로가기
백준

[백준] 2441번 : 별 찍기 - 4 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트

by 우당탕탕 개발자 2023. 7. 11.
728x90
반응형

 

 

2441번: 별 찍기 - 4

첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.

www.acmicpc.net

 

1. 문제 설명

2. 풀이과정

  1. 중첩 반복문을 연습해 보는 문제라고 할 수 있겠습니다.
  2. sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러옵니다. import sys
  3. 총 별을 찍을 줄 수를 입력받습니다. N = int(sys.stdin.readline())
  4. 입력받은 수부터 1까지 각 줄마다 별의 개수를 찍어줘야 하므로 거꾸로 반복문을 실행합니다. for i in range(N, 0, -1)
  5. 별을 오른쪽 기준으로 정렬하여 찍어줘야 하므로 공백을 먼저 출력해 준다. 공백은 입력받은 숫자에서 해당 중의 별의 개수를 빼준 개수만큼 출력해 준다. for j in range(N - i)
  6. 해당 줄이 모두 출력된 후 줄 바꿈이 이루어져야 하므로 줄 바꿈을 없애준다. print(' ', end='')
  7. 별을 찍어준다. 별을 찍어줄 때도 줄 바꿈 없이 찍어준다. for j in range(i): print('*', end='')
  8. 해당 줄의 출력이 모두 끝나면 줄 바꿈을 해준다. print()
반응형

3. 소스코드

import sys

N = int(sys.stdin.readline())

for i in range(N, 0, -1):
    for j in range(N - i):
        print(' ', end='')
    for j in range(i):
        print('*', end='')
        
    print()
728x90
반응형