카테고리 없음
[프로그래머스] 두 개 뽑아서 더하기 - JAVA 풀이
sppl24
2024. 10. 13. 01:18
반응형
[프로그래머스] 두 개 뽑아서 더하기
문제 설명
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.
제한사항
- numbers의 길이는 2 이상 100 이하입니다.
- numbers의 모든 수는 0 이상 100 이하입니다.
입출력 예
아이디어
- 2중 루프 돌려서 중복 없이 리스트에 추가한다
- (indexOf로 중복 체크 했지만 HashSet으로도 처리 가능)
- 오름차순 정리
JAVA 풀이
import java.util.*;
class Solution {
public List<Integer> solution(int[] n) {
List<Integer> tmp = new ArrayList<>();
for (int i = 0; i < n.length; i++) {
for (int j = 0; j < n.length; j++) {
int sum = n[i] + n[j];
if (i != j) {
if (tmp.indexOf(sum) == -1) {
tmp.add(sum);
}
}
}
}
Collections.sort(tmp);
List<Integer> answer = new ArrayList<>();
answer.add(tmp.get(0));
for (int i = 1; i < tmp.size(); i++) {
if (tmp.get(i - 1) != tmp.get(i)) {
answer.add(tmp.get(i));
}
}
return answer;
}
}
반응형