연속된 세 개의 정수를 더해 12가 되는 경우는 3, 4, 5입니다. 두 정수 num과 total이 주어집니다. 연속된 수 num개를 더한 값이 total이 될 때, 정수 배열을 오름차순으로 담아 return하도록 solution함수를 완성해보세요.
class Solution {
public int[] solution(int num, int total) {
int[] answer =new int[num];
//가장 첫번쨰 원소를 구하면 쉽게 구해질듯
//계산한 결과 total = x*num+ (1~ num-1 까지의 합) 이걸 충족 시키는
//x 의 값이 첫번쨰 원소임
// 결국 x = (total-(1~num-1까지의 합)) / num 임
int x=0;
int a=0; // 1~num-1까지의 합
for(int i=0; i<num;i++){
a+=i;
}
x=(total-a)/num;
for(int i=0;i<num;i++){
answer[i]=x;
x++;
}
return answer;
}
}
음 풀이는 주석에 적은 내용이 끝이긴하다.
가장 첫번째 원소를 구하는게 관건인걸로 풀이를 했다. !
첫번째 원소를 구했다면 그때부터는 for 문 을 통해 1씩 커지는 답변 배열을 만들면 끝이다.