classSolution{ publicint[] solution(int[] progresses, int[] speeds) { int length = progresses.length; int[] days = newint[length]; int max = 0; LinkedList<int[]> result = new LinkedList<>(); for(int i=0; i<length; i++) {
// 소요시간이 담긴 배열 days 생성 days[i] = Math.ceil((100-progresses[i]) / speeds[i]); // 최대값 보다 크다면 다음 원소에 1 삽입 if(days[i]>max) { max = days[i]; result.add(newint[] {1}); } // 최대값 보다 작다면 해당 원소에 +1 else { result.getLast()[0]++; } } // 일반 배열로 복사 후 리턴 int size = result.size(); int[] answer = newint[size]; for (int i = 0; i < size; i++) { answer[i] = result.pollFirst()[0]; }
classSolution{ publicint[] solution(int[] progresses, int[] speeds) { int length = progresses.length; int max = 0; ArrayList<Integer> result = new ArrayList<>();
for(int i=0; i<length; i++) {
// 소요시간이 담긴 배열 days 생성 int time = (int)Math.ceil(((double)100-progresses[i])/speeds[i]); // 최대값 보다 크다면 다음 원소에 1 삽입 if(time>max) { max = time; result.add(1); } // 최대값 보다 작다면 해당 원소에 +1 else { result.set(result.size() - 1, result.get(result.size() - 1) + 1); } } // 일반 배열로 복사 후 리턴 int size = result.size(); int[] answer = newint[size]; for (int i = 0; i < size; i++) { answer[i] = result.get(i); } return answer; } }
classSolution{ publicintsolution(int bridge_length, int weight, int[] truck_weights){ Queue<Integer> bridge = new LinkedList<>(); int sec = 0; int max = 0;