본문 바로가기
알고리즘/CodeUp PS

[CodeUp][Python] 1360번 : 숫자 피라미드 2

by 빛밤하늘 2021. 10. 2.
반응형

밑의 링크는 CodeUp에서의 문제 링크입니다.

문제는 링크를 통해서 직접 봐주시길 바랍니다.

 

숫자 피라미드 2

숫자 피라미드를 출력한다. (출력되는 숫자 사이는 빈 칸으로 띄운다)

codeup.kr

 

 

 

주의해야 할 점

1. readline과 int나 float를 사용하는 입력 방식

readline을 사용해서 입력할 때는 맨 끝에 \n이 붙어서 입력됩니다.

하지만, 입력한 값을 int나 float으로 처리해 정수, 실수형으로 만들어 줄 때는 

굳이 \n을 떼기 위해 rstrip을 사용할 필요가 없습니다.

숫자 형태를 만들어줄 때 자동으로 사라집니다.

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

 

3. 출력 형식에 맞게 출력하기

print 내장 함수를 사용하여 출력할 때, 이번 문제처럼 특별한 출력 형식이 주어진다면

+를 사용해서 출력 형식에 맞게 출력해도 되지만,

더 편한 방법인 f-string을 사용해서 편하게 출력해봅시다.

 

 

예제 설명

1. 첫 번째 예제

- 입력

3

 

- 출력

3 3 3 
2 2 

 

- 설명

입력한 숫자 피라미드의 길이 n은 3입니다.

3부터 1까지 줄여가면서 각 줄에 현재 숫자와 공백을 현재 숫자만큼 반복해서 출력합니다.

 

 

생각한 풀이 과정

1 <= n <= 99인 숫자 피라미드의 길이 n을 입력하고, int형으로 변환합니다.

n = int(stdin.readline())

 

- 반복문 시작

숫자 피라미드의 각 줄에서 출력할 숫자와 그 숫자의 개수를 의미하는 숫자들을

n부터 1까지 1씩 줄여가면서 반복합니다.

for num in range(n, 0, -1):

 

현재 숫자와 공백을 현재 숫자만큼 반복해서 출력합니다.

print(f'{num} ' * num)

- 반복문 끝

 

 

제출한 파이썬 코드

# readline을 사용하기 위해 import합니다.
from sys import stdin


# 길이 n을 입력합니다.
# 1 <= n <= 99
# int형으로 변환합니다.
n = int(stdin.readline())

# 숫자 피라미드의 각 줄에서 출력할 숫자와 그 숫자의 개수를 의미하는 숫자들을
# n부터 1까지 1씩 줄여가면서 반복합니다.
for num in range(n, 0, -1):
    # 현재 숫자와 공백을 현재 숫자만큼 출력합니다.
    print(f'{num} ' * num)

 

 

제출 결과

CodeUp 1360번 : 숫자 피라미드 2에서 코드 제출 결과
CodeUp 1360번 : 숫자 피라미드 2에서 코드 제출 결과

 

 

 

※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.

※ 더 효율적이고 빠른 정답을 환영합니다.

※ 공감 버튼과 구독 버튼도 잊지 말고 꾹 눌러주시면 감사하겠습니다~👍👍

반응형

댓글