일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 백준
- java #자바 #동빈나
- react #리액트 #동빈나 #나동빈 #유튜브강의
- 다이나믹프로그래밍
- dp
- 프로그래머스
- BFS
- 프로그래머스 #파이썬 #코딩테스트 #알고리즘
- 투포인터
- css #생활코딩 #웹
- PYTHON
- 코딩테스트
- 파이썬 #백준 #알고리즘 #코딩테스트
- java #자바
- java #자바 #나동빈
- 자바 #java
- react #리액트 #동빈나
- 파이썬
- 다익스트라
- 재귀
- Dijkstra
- DFS
- 백트랙킹
- 백준 #파이썬 #알고리즘 #코딩테스트
- java #자바 #생활코딩
- 프로그래머스 #파이썬 #알고리즘 #코딩테스트
- 파이썬 #알고리즘 #코딩테스트 #프로그래머스
- css #웹 #생활코딩
- 알고리즘
- 백준 #알고리즘 #파이썬 #코딩테스트
Archives
- Today
- Total
커리까지
[프로그래머스] 특이한 정렬 파이썬 본문
728x90
SMALL
문제 설명
정수 n
을 기준으로 n
과 가까운 수부터 정렬하려고 합니다. 이때 n
으로부터의 거리가 같다면 더 큰 수를 앞에 오도록 배치합니다. 정수가 담긴 배열 numlist
와 정수 n
이 주어질 때 numlist
의 원소를 n
으로부터 가까운 순서대로 정렬한 배열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤
n
≤ 10,000 - 1 ≤
numlist
의 원소 ≤ 10,000 - 1 ≤
numlist
의 길이 ≤ 100 numlist
는 중복된 원소를 갖지 않습니다.
입출력 예
numlist | n | result |
---|---|---|
[1, 2, 3, 4, 5, 6] | 4 | [4, 5, 3, 6, 2, 1] |
[10000,20,36,47,40,6,10,7000] | 30 | [36, 40, 20, 47, 10, 6, 7000, 10000] |
입출력 예 설명
입출력 예 #1
- 4에서 가까운 순으로 [4, 5, 3, 6, 2, 1]을 return합니다.
- 3과 5는 거리가 같으므로 더 큰 5가 앞에 와야 합니다.
- 2와 6은 거리가 같으므로 더 큰 6이 앞에 와야 합니다.
입출력 예 #2
- 30에서 가까운 순으로 [36, 40, 20, 47, 10, 6, 7000, 10000]을 return합니다.
- 20과 40은 거리가 같으므로 더 큰 40이 앞에 와야 합니다.
제출 답안
def solution(numlist, n):
answer = sorted(numlist, key=lambda x:(abs(x-n), -x))
return answer
728x90
LIST
'알고리즘 > 풀이' 카테고리의 다른 글
[프로그래머스] 문자열 밀기 파이썬 (0) | 2023.11.07 |
---|---|
[프로그래머스] 다항식 더하기 파이썬 (0) | 2023.11.05 |
[프로그래머스] 주사위 게임 3 파이썬 (1) | 2023.11.03 |
[프로그래머스] 안전지대 파이썬 (1) | 2023.11.02 |
[프로그래머스] 배열 만들기 2 파이썬 (0) | 2023.10.31 |
Comments