문제
문제 답안
import java.util.*;
class Solution {
public int[] solution(int[] numbers) {
ArrayList<Integer> list = new ArrayList<>();
for(int i = 0; i < numbers.length; i++){
for(int j = i; j < numbers.length; j++){
if(i != j)
list.add(numbers[i]+numbers[j]);
}
}
ArrayList<Integer> ans = new ArrayList<>();
for(int i = 0; i < list.size(); i++){
int n = list.get(i);
if(ans.contains(n) == false)
ans.add(n);
}
int[] answer = new int[ans.size()];
for(int i = 0; i < ans.size(); i++)
answer[i] = ans.get(i);
Arrays.sort(answer);
return answer;
}
}
답안 풀이
contains() 함수를 잘못 알고 있어서 못풀다가 바로잡고는 다시 바로 푼 문제!
ans.contains(50);
ans.contains("java");
우선 두개씩 더한걸 arraylist에 넣어준 후, 중복되는건 빼기 위해 contains()를 써주었다.