https://programmers.co.kr/learn/courses/30/lessons/42586
코딩테스트 연습 - 기능개발
프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 ��
programmers.co.kr
<내풀이>
package algorithm_2;
import java.util.ArrayList;
public class l11 {
public static int[] solution(int[] progresses, int[] speeds) {
ArrayList<Integer> list =new ArrayList<>();
int days=0;
for(int i =0; i<progresses.length;i++) {
int count=1;
if(i==progresses.length-1) {
list.add(count);
break;
}
days+=(Math.ceil((double)(100-progresses[i])/speeds[i]));
for(int j = i+1;j<progresses.length;j++) {
if(progresses[j]+speeds[j]*days>=100) {
if(j==progresses.length-1) {
count++;
list.add(count);
i=j;
}else {
count++;
}
}else {
progresses[j]=progresses[j]+speeds[j]*days;
i=j-1;
list.add(count);
break;
}
}
}
int[] answer = new int[list.size()];
for(int i=0;i<list.size();i++) {
answer[i]=list.get(i);
}
return answer;
}
public static void main(String[] args) {
int[] progresses= {93,30,55};
int[] speeds= {1,30,5};
for(int i:solution(progresses,speeds)) {
System.out.println(i);
}
int a = 5;
int b = 6;
System.out.println(Math.ceil((double)a/b));
}
}
'컴퓨터 프로그래밍 > 알고리즘' 카테고리의 다른 글
프로그래머스-쇠막대기 (0) | 2020.06.06 |
---|---|
프로그래머스-예상 대진표 (0) | 2020.06.06 |
프로그래머스-폰켓몬 (0) | 2020.06.04 |
프로그래머스-점프와 순간 이동 (0) | 2020.06.04 |
프로그래머스-탑 (0) | 2020.06.03 |