๋ฌธ์
์ ์ ๋ฐฐ์ด numbers๊ฐ ์ฃผ์ด์ง๋๋ค. numbers์์ ์๋ก ๋ค๋ฅธ ์ธ๋ฑ์ค์ ์๋ ๋ ๊ฐ์ ์๋ฅผ ๋ฝ์ ๋ํด์ ๋ง๋ค ์ ์๋ ๋ชจ๋ ์๋ฅผ ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ๋ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. |
- numbers์ ๊ธธ์ด๋ 2 ์ด์ 100 ์ดํ์ ๋๋ค.
- numbers์ ๋ชจ๋ ์๋ 0 ์ด์ 100 ์ดํ์ ๋๋ค.
์ ์ถ๋ ฅ ์
numbers | result |
[2, 1, 3, 4, 1] | [2, 3, 4, 5, 6, 7] |
[5, 0, 2, 7] | [2, 5, 7, 9, 12] |
์์ฑ ์ฝ๋ ๋ฐ ํ์ด
import java.util.*;
class Solution {
public int[] solution(int[] numbers) {
int[] answer = {};
ArrayList<Integer> list = new ArrayList<>(); // ๋์ ๋ฐฐ์ด ์์ฑ
for (int i=0; i<numbers.length-1; i++) {
for (int j=i+1; j<numbers.length; j++) {
int sum = numbers[i] + numbers[j];
if (!list.contains(sum)) { // list์ ๋ ์์ ํฉ์ด ์กด์ฌํ์ง ์์ผ๋ฉด
list.add(sum); // ๋ ์์ ํฉ์ธ sum ์ถ๊ฐ
}
}
}
Collections.sort(list); // ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
answer = new int[list.size()]; // ๋ ์์ ํฉ์ ์ ์ฅํ ๋ฐฐ์ด
int idx = 0;
for (int sum : list) {
answer[idx] = sum; // list์์ ํ๋์ฉ ๊บผ๋ด answer ๋ณ์์ ์ ์ฅ
idx++;
}
return answer;
}
}
๋ค์๊ณผ ๊ฐ์ ์์ ๋ฐ์ดํฐ๊ฐ ์๋ค๊ณ ์๊ฐํด๋ณด์.
5 | 1 | 3 | 2 | 6 |
1) ์ฒซ ๋ฒ์งธ ๋ฐ๋ณต๋ฌธ์์๋ ํฐ ๋ฃจํ๋ฅผ ๋๊ฒ ๋๋ค!
์ฆ, numbers[0] = 5์ผ ๋
numbers[1] = 1์ผ ๋
...
์ด๋ฐ์์ผ๋ก ๋น๊ต๋ฅผ ํ๊ฒ ๋จ
2) ๋ ๋ฒ์งธ ๋ฐ๋ณต๋ฌธ์์๋ ์์ ๋ฃจํ๋ฅผ ๋๊ฒ ๋๋ค!
์ฆ, numbers[0] = 5์ผ ๋ numbers[1], numbers[2], numbers[3], numbers[4]์ ๋น๊ต
numbers[1] = 1์ผ ๋ numbers[2], numbers[3], numbers[4]์ ๋น๊ต
...
์ด๋ฐ์์ผ๋ก ๋ฐ๋ณต๋ฌธ์ ๋๋ฉด์ ๊ฐ ๋ฐฐ์ด์ ํฉ์ sum ๋ณ์์ ์ ์ฅํด์ค!
3) ์ด ๋ ํด๋น ๊ฐ์ด list์ ์กด์ฌํ์ง ์๋๋ค๋ฉด list ๋ฐฐ์ด์ ์ถ๊ฐ (์ค๋ณต์ ๋ฐฉ์งํ๊ธฐ ์ํด)
4) ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํด์ฃผ๊ณ , ํฅ์๋ for๋ฌธ์ ์ด์ฉํ์ฌ ๊ฒฐ๊ณผ๊ฐ์ ๋ฆฌํดํ answer ๋ฐฐ์ด์ ๊ฐ ์ ์ฅ!
* ํฅ์๋ for๋ฌธ์ ๋ํ ์ค๋ช
2021.03.29 - [IT/๊ฐ๋ ์ ๋ฆฌ] - ํฅ์๋ FOR ๋ฌธ
ํฅ์๋ FOR ๋ฌธ
์กฐ๊ฑด JDK 1.5 ์ด์ ์ฌ์ฉํ ๋ณ์๋ ์ง์ญ๋ณ์๋ก ์ธ์ํจ (for๋ฌธ ์์์ ์ฌ์ฉ๋๊ธฐ ๋๋ฌธ) ๋์์ ๋ฐฐ์ด ๋๋ ์ฌ๋ฌ ์์๋ฅผ ํฌํจํ ์๋ฃํ์ด์ด์ผ ํจ ์ฅ์ ๊ฐ๋ ์ฑ์ด ์ข์ผ๋ฉฐ ๊ฐํธํจ ๋ฐฐ์ด ์ธ๋ฑ์ค ๋ฌธ์ ๋ฅผ ํด๊ฒฐ
zoo-it.tistory.com
์คํ ๊ฒฐ๊ณผ
'๐ป ๊ณต๋ถ (IT) > ๐ฉ๐ปโ๐ป ์ฝ๋ฉ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MySQL] Level 2 ๋ฌธ์ (0) | 2021.04.01 |
---|---|
[MySQL] Level 1 ๊ธฐ๋ณธ ๋ฌธ์ (0) | 2021.03.30 |