โฐ๋ฌธ์
์ ์ 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์ด ์์ ์์ผ ํฉ๋๋ค.
๐กํ์ด
1. ์ฃผ์ด์ง ๋ฐฐ์ด( numlist[] )์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค.
2. ์๊ธฐ ์์ ( numlist[i] )์ ์์์ n์ ๋บ ๊ฐ์ด ๋ฐฐ์ด( numlist[] )์ ๋ค๋ฅธ ๊ฐ๋ณด๋ค ์๋ค๋ฉด ๋ ์์ ์๋ฆฌ๋ฅผ ๋ฐ๊ฟ์ค๋ค.
(์ด๋, ๊ฑฐ๋ฆฌ๊ฐ ๊ฐ๋ค๋ฉด ๋ ํฐ ์๋ฅผ ์์ ์ค๋๋ก ํด์ผํ๋ฏ๋ก ๋น๊ตํ ๋ ๋ฐฐ์ด ์ ์ฒด์ ์์์ ๋น๊ตํ๋ค.)
โญ์ ์ถ ์ฝ๋
import java.util.Arrays;
class Solution {
public int[] solution(int[] numlist, int n) {
Arrays.sort(numlist); //์ค๋ฆ์ฐจ์ ์ ๋ ฌ
for(int i=0; i<numlist.length; i++){
for(int j=0; j<numlist.length; j++){
if(Math.abs(numlist[i] - n) <= Math.abs(numlist[j] - n)){
int tmp = numlist[i];
numlist[i] = numlist[j];
numlist[j] = tmp;
}
}
}
return numlist;
}
}
'๐ Algorithm > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] ๋ฌ๋ฆฌ๊ธฐ ๊ฒฝ์ฃผ(์๋ฐ) (1) | 2023.10.13 |
---|---|
[Programmers] ๋ฑ์ ๋งค๊ธฐ๊ธฐ(์๋ฐ) (0) | 2023.08.01 |
[Programmers] ์น์์ด(2)(์๋ฐ) (0) | 2023.06.12 |
[Programmers] ์ต์์ง์ฌ๊ฐํ(์๋ฐ) (0) | 2023.05.15 |
[Programmers] ์ด์ง์ ๋ํ๊ธฐ(์๋ฐ) (0) | 2023.04.25 |