[프로그래머스] 특이한 정렬

해피데빙·2023년 1월 8일
0

코딩테스트

목록 보기
40/52
post-custom-banner

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/120880

의사코드

가까운 수 : 차의 절댓값이 작은 수
거리가 같다면 더 큰 수를 앞에 오도록 : 내림정렬
sorted(배열, key=lambda x: (조건1, 조건2))
조건1에 대한 값이 같으면 조건2를 가지고 정렬을 한다

내 풀이

def solution(numlist, n):
    return sorted(numlist, key=lambda x: (abs(x-n), -x))
    //-x를 n-x로 표현하기도 한다
  • -x는 내림정렬(x가 디폴트로 오름정렬이니까)
  • n-x로 하면 x가 클수록 음수니까 오름정렬로 큰 수를 먼저 배치한다
profile
노션 : https://garrulous-gander-3f2.notion.site/c488d337791c4c4cb6d93cb9fcc26f17

0개의 댓글