[프로그래머스] 연속된 수의 합 - JAVA
2023. 4. 23. 19:20ㆍ프로그래머스 - JAVA
문제 설명
연속된 세 개의 정수를 더해 12가 되는 경우는 3, 4, 5입니다. 두 정수 num과 total이 주어집니다. 연속된 수 num개를 더한 값이 total이 될 때, 정수 배열을 오름차순으로 담아 return하도록 solution함수를 완성해보세요.
제한사항
1 ≤ num ≤ 100
0 ≤ total ≤ 1000
num개의 연속된 수를 더하여 total이 될 수 없는 테스트 케이스는 없습니다.
코드
import java.util.ArrayList;
import java.util.Comparator;
class Solution {
public ArrayList<Integer> solution(int num, int total) {
ArrayList<Integer> arr = new ArrayList<>();
int ck = total/num;
int cknum = num/2+1;
arr.add(ck);
for(int i = 1;i<cknum;i++){
if(num%2==0){
if(i==cknum-1){
arr.add(ck+i);
}
else{
arr.add(ck+i);
arr.add(ck-i);
}
}
else{
arr.add(ck+i);
arr.add(ck-i);
}
}
arr.sort(Comparator.naturalOrder());
return arr;
}
}
출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges
'프로그래머스 - JAVA' 카테고리의 다른 글
[프로그래머스] 겹치는 선분의 길이 - JAVA (0) | 2023.04.23 |
---|---|
[프로그래머스] 안전지대 - JAVA (0) | 2023.04.23 |
[프로그래머스] 분수의 덧셈 - JAVA (0) | 2023.04.23 |
[프로그래머스] 특이한 정렬 - JAVA (0) | 2023.04.23 |
[프로그래머스] 유한소수 판별하기 - JAVA (0) | 2023.04.23 |