1427번 - 소트인사이드
고수님들 혹시 틀린부분이나 반례를 알려주시면 감사하겠습니다...!
b = list(map(int, input())) a = list(set(b)) a = a[::-1] for i in range(len(a)): if b.count(a[i]) >= 2: for _ in range(b.count(a[i])-1): print(a[i], end="") print(a[i], end="")
원칙적으로 set은 정렬 순서를 보장하지 않습니다. 따라서 a가 오름차순/내림차순으로 정렬되어있으리라는 보장이 없습니다.(다만 제가 cpython 3.8.2로 테스트 했을 때에는 항상 정렬된 순서로 반환하긴 합니다)
여담인데 코드가 좀 많이 복잡하네요... 아래 for 문 안을 간략화 해 봤습니다만 사실 set을 쓰지 말고 sorted(b)를 쓰면 훨씬 더 간단히 만들 수 있습니다.
댓글을 작성하려면 로그인해야 합니다.
gksqnfl1241 2년 전
고수님들 혹시 틀린부분이나 반례를 알려주시면 감사하겠습니다...!