diff --git a/programmers/택배 배달과 수거하기/solution.java b/programmers/택배 배달과 수거하기/solution.java new file mode 100644 index 0000000..49b8dd3 --- /dev/null +++ b/programmers/택배 배달과 수거하기/solution.java @@ -0,0 +1,63 @@ +// [문제 링크]: https://school.programmers.co.kr/learn/courses/30/lessons/150369 + +class Solution { + public long solution(int cap, int n, int[] deliveries, int[] pickups) { + long answer = 0; + int len = n, lm = len-1, lm2 = lm, tmp = 0; + while(true){ + int maxD = 0, maxP = 0, pickCap = 0, delCap = 0, pm = -2, dm = -2; + boolean[] full = new boolean[2]; + for(int x = lm; x>=0; x--){ + int del = deliveries[x]; + if(del==0) continue; + if(maxD == 0) maxD = x; + if(delCap != cap && del!=0){ + if(delCap cap - delCap) { + tmp = cap - delCap; //더클때 + if(dm=0; x--){ + int pic = pickups[x]; + if(pic == 0) continue; + if(maxP == 0) maxP = x; + if(pickCap != cap && pic!=0){ + if(pickCap cap - pickCap) { + tmp = cap - pickCap; //더클때 + if(pm