p_days
배열에 저장p_days
배열을 순차적으로 탐색해서 answer
배열에 저장import java.util.Arrays;
class Solution {
public int[] solution(int[] progresses, int[] speeds) {
int p_num = progresses.length; // progress 개수 저장
int [] p_days = new int [p_num]; // progress 별로 걸리는 날짜 저장
for(int i=0;i<p_num;i++){
int days=0;
if((100-progresses[i])%speeds[i]!=0) days = (100-progresses[i])/speeds[i]+1;
else days = (100-progresses[i])/speeds[i];
p_days[i]=days;
} // progress 별로 걸리는 days 계산해서 p_days[i]에 저장
int[] answer = new int [p_num];
int idx=0, l_day=0;
for(int i=0;i<p_num;i++){
if(i==0) {answer[idx++]=1; l_day=p_days[i];}
else{
if(p_days[i]>l_day) {answer[idx++]=1; l_day=p_days[i];}
else answer[idx-1]+=1;
}
}
return Arrays.copyOfRange(answer,0,idx);
}
}
int [] arr = new int [N];
// 진짜 크기를 나타내는 idx를 따로 계산
return Arrays.copyOfRange(arr,0,idx);
프로그래머스에서는 반환값이 배열이라서, 일단 이렇게 잘라주고 있다.