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

비정상적인 정렬 / Lv.0


문제 설명)

존재들 N기반으로 N에 가장 가까운 숫자로 정렬하려고 합니다. 이때 N서로의 거리가 같으면 큰 숫자를 먼저 입력합니다. 정수 배열 번호 목록및 정수 N주어지면 번호 목록의 요소 Nsolve 함수를 완성하여 내림차순으로 정렬된 배열을 반환합니다.

제한)

  • 1 ≤ N ≤ 10,000
  • 1 ≤ numlist ≤ 10,000의 요소
  • 1 ≤ 숫자 목록 길이 ≤ 100
  • numlist에는 중복 요소가 없습니다.

I/O 예)


I/O 예시 설명)

I/O 예제 #1

  • 4에 가장 가까운 순서대로 (4, 5, 3, 6, 2, 1)을 반환합니다.
  • 3과 5는 같은 간격으로 있으므로 더 큰 5가 먼저 와야 합니다.
  • 2와 6은 같은 간격으로 있으므로 더 큰 6이 먼저 와야 합니다.

I/O 예제 #2

  • 30에 가장 가까운 순서대로 (36, 40, 20, 47, 10, 6, 7000, 10000)을 반환합니다.
  • 20과 40은 같은 거리이므로 더 큰 40이 먼저 와야 합니다.

설명)

하나
2
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
#포함하다 <>
#포함하다 <벡터>
#포함하다 <연산>
사용 네임스페이스 기본;
내부 온도;
부울 비교하다(내부 ㅏ, 내부 비)
{
// 절대값
내부 번호 1 = 복근(온도 ㅏ);
내부 2 번 = 복근(온도 비);
// 두 숫자가 같으면 내림차순
만약에 (숫자 1 == 2 번)
{
돌려 주다> 비;
}
// n에 가까운 순서대로 정렬
돌려 주다 번호 1 < 2 번;
}
벡터<내부> 해결책(벡터<내부> 번호 목록, 내부 N) {
온도 = N;
정렬(숫자목록.시작하다(), 숫자 목록.(), 비교하다);
돌려 주다 번호 목록;
}
CS

원천 : https://school.programmers.co.kr/learn/courses/30/lessons/120880

프로그램 제작자

코드 중심 개발자를 고용하십시오. 배치 기반 위치 매칭. 프로그래머의 개발자별 프로필에 가입하고 기술 호환성이 좋은 회사와 연결하십시오.

Programmer.co.kr