코딩테스트

백준 1427

eunGI 2022. 9. 22. 13:09

이 문제는 쉬운데 풀면서 새로운 개념들을 많이 알아서 메모하려고 글 씀

 

a = input()
a2 = list(map(int, str(a)))

a2.sort(reverse=True)

print("".join(map(str, a2)))

일단 내가 짠 정답 코드

 

1. 수를 입력받음

2. map 함수를 이용해서 입력받은 값을 int 형으로 한글자씩 저장

* map: map은 리스트의 요소를 지정된 함수로 처리해주는 함수입니다. (map은 원본 리스트를 변경하지 않고 새 리스트를 생성합니다).

출처: https://sondho.tistory.com/13

3. a2 리스트를 내림차순으로 정렬 (문제 조건)

4. a2 리스트 내용을 하나로 합쳐서 출력

* join: 리스트 내용을 하나로 합쳐줌

출처: http://mwultong.blogspot.com/2006/12/python-list-merge.html

 

근데 이렇게 하려고 했는데 TypeError: sequence item 0: expected str instance, int found 라는 에러가 남

그래서 구글링 해보니까 int형 자료가 저장된 리스트를 join 하려면

이렇게 map으로 요소 전체를 str으로 바꿔주고 해야한다고 해서 저렇게 했음

'코딩테스트' 카테고리의 다른 글

백준 10825  (0) 2022.09.27
백준 1764  (0) 2022.09.27
백준 1181  (0) 2022.09.22
백준 10989 [계수 정렬]  (0) 2022.09.22
백준 1015번  (0) 2022.09.19