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

[CodeUp][Python] 1172번 : 세 수 정렬하기

by 빛밤하늘 2021. 8. 25.
반응형

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

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

 

세 수 정렬하기

세 수를 오름차순으로 정렬하려고 한다. (낮은 숫자 -> 높은 숫자) 예) 5 8 2   ====> 2 5 8    로 출력

codeup.kr

주의해야 할 점

이 문제에서 사용한 map을 사용하고 리스트 변수로 만들어주는 입력 방식은 정말 많이 사용하는 입력 방식입니다.

이해하고 거의 외운 것 마냥 써봅시다.



이번 문제는 if와 else를 사용해서 푸는 의도입니다만,

우리는 더 쉽고 빠른 길을 택해도 됩니다.

파이썬의 리스트와 sort 메서드에 대해서 공부해보고 사용해봅시다.

 

 

반복문을 이용하여 print로 한 숫자씩 출력할 때, 다음 줄로 넘어가지 않고 한 칸만 띄우는 방법인

print의 end 매개변수에 대해서도 공부해봅시다.




생각한 풀이 과정

  1. readline을 사용하기 위해 import 합니다.
  2. 세 정수를 공백으로 구분해 입력합니다. 각각 정수형으로 변환하고, 리스트 변수 nums에 넣어줍니다.
  3. nums 내부의 값들을 오름차순으로 정렬합니다.
  4. 반복문을 이용하여 nums에서 값 하나씩 반복해봅니다.
  5. 현재 숫자를 출력하고, 출력 형식에 맞게 다음 줄로 넘어가지 않고 한 칸만 띄어줍니다.

 

제출한 파이썬 코드

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


# 세 정수를 입력합니다.
# 각각 정수형으로 변환하고, 리스트 변수에 넣어줍니다.
nums = list(map(int, stdin.readline().split()))

# nums 내의 값들을 오름차순으로 정렬합니다.
nums.sort()

# nums 내의 숫자들을 하나씩 반복합니다.
for num in nums:
    # 현재 숫자를 출력하고, 다음 줄로 넘어가지 않고 마지막에 한 칸 띄어줍니다.
    print(num, end=' ')

 

 

 

제출 결과

결과

 

 

 

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

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

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

반응형

댓글