현재노트
[프로그래머스] 두 개 뽑아서 더하기(Java) - Level1 본문
문제링크
https://programmers.co.kr/learn/courses/30/lessons/68644
코딩테스트 연습 - 두 개 뽑아서 더하기
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한
programmers.co.kr
문제내용
solution
class Solution {
public int[] solution(int[] numbers) {
int[] answer;
List<Integer> sumList = new ArrayList<Integer>();
for (int i=0; i<numbers.length; i++) {
for(int j= i+1; j<numbers.length; j++){
int sum = numbers[i]+numbers[j];
if(!sumList.contains(sum)){
sumList.add(sum);
}
}
}
answer = sumList.stream().mapToInt(i -> i).toArray();
Arrays.sort(answer);
return answer;
}
}
2중 반복문을 통해서 두 개의 합이 나올 수 있는 경우의수를 모두 구하고, 구한값이 list에 포함이 되어있지않다면 add하는 형태로 작성하였습니다.
이후, stream을 사용하여 배열에 담아주고 담은 배열을 오름차순 정렬하여 리턴합니다.
'코딩테스트' 카테고리의 다른 글
[프로그래머스] 음양 더하기(Java) - Level1 (0) | 2021.08.07 |
---|---|
[프로그래머스] K번째수(Java) - Level1 (0) | 2021.08.07 |
[프로그래머스] 부족한 금액 계산하기(Java) - Level1 (0) | 2021.08.02 |
[프로그래머스] 3진법 뒤집기(Java) - Level1 (0) | 2021.07.30 |
Comments