본문 바로가기

Algorithm/프로그래머스

프로그래머스 level1 문제 : 기능개발(java)

반응형

private int result = 1, index = 0;
public int[] functionDevelopment(int[] progresses, int[] speeds) {
int[] answer = new int[progresses.length];
ArrayList<Integer> arrayList = new ArrayList<>();
for (int i = 0; i < progresses.length; i++) {
for (int j = 1; j <= 100 / speeds[i]; j++) {
if (progresses[i] + (speeds[i] * j) >= 100) {
arrayList.add(j);
break;
}
}
}

answer[0] = result;
for (int i = 1; i < arrayList.size(); i++) {
if (arrayList.get(0) <= arrayList.get(i)) {
index++;
answer[index] = result;
} else {
result++;
answer[0] = result;
}
result = 1;
}

int resultIndex = 0;
for (int anAnswer : answer) {
if (anAnswer != 0) {
resultIndex++;
} else break;
}

int[] result = new int[resultIndex];
System.arraycopy(answer, 0, result, 0, resultIndex);

return result;
}

이렇게 구현했지만 3.xx초로 실패네요 ㅠㅠ 전 너무 어렵습니다..


다른 분들의 풀가 있으면 힌트좀 주세요..


queue 로 만드신분을 봤지만 음.. 아직은 어렵네요


반응형