barcode

백준 1427번 풀이

BOJ/[BOJ] Python

문제

https://www.acmicpc.net/problem/1427

 

1427번: 소트인사이드

첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.

www.acmicpc.net

숫자 정렬하는 문제인데 이제 입력이 192834729 막 이런식이다.

 

풀이

어? 내림차순? 그럼 정렬 알고리즘 수정해야 하나요??? 아니 그럴 필요는 없으시고요 고객님. 이거 진짜 핵 심플한 문제임.

 

import sys

N = sys.stdin.readline().rstrip()
x = []

for i in N:
    x.append(i)

x.sort(reverse=True)
x = ''.join(x)

print(x)

파이썬은 문자도 시퀀스형 데이터이기 때문에 반복문을 돌릴 수 있다. 그래서 문자로 들어온 숫자를 for문 돌려서 하나씩 배열에 넣고(별도로 나눌 필요도 없고 그냥 for문 돌리면 하나씩 들어간다) sort를 하면 된다. 뭘 주고? reverse=True를 주고. 다음은 그걸 내림차순으로 정렬한 다음 join으로 묶어서 출력하면 끝이다.

'BOJ > [BOJ] Python' 카테고리의 다른 글

백준 11650, 11651번 풀이  (0) 2022.09.19
백준 25501번 풀이  (0) 2022.09.13
백준 2108번 풀이  (0) 2022.08.23
백준 25305번 풀이  (0) 2022.08.23
백준 10989번 풀이  (0) 2022.08.20