lnacles   3년 전

택배를 싣을 마을과 배달할 마을을 따로 저장해서 마을에 도착하면 첫번쨰로 짐을 내리고 그 다음 짐을 싣는 방법으로 접근 했습니다. 어쨋든 최대로 배달한 택배수를 구하면 된다고 생각했습니다.

예로

1 4 10

3 5 5

4 7 10

입력을 coupang_get [(1,10),(3,5),(4,10)] 와 coupang_post [(4,10),(5,5),(7,10)]으로 받아 x[0]을 기준으로 정렬을 하고 1번마을부터 마지막 마을까지 내리고 싣고를 반복하면서 내릴때 result에 값을 더해갔습니다.

제가 어디에서 잘못생각하고 있는지 잘 모르겠습니다.

lnacles   3년 전

위와 같은 접근에 치명적인 오류가 있습니다. 이렇게 놔눠서 하시게 되면 해당 마을에 도착했을 때 내려놔야할 짐이 있지만 이전 마을에서 다 내려두면 limit이 0이 되버리는 어이없는 상황이 발생합니다. 즉 짐을 초과해서 다 싣지 못하면 해당 주소의 배송 물량도 바꿔줘야합니다. 리스트 두개로 나누고 정렬을 하면 어느 인덱스의 물량을 바꿔줘야하는지 알수 없습니다. 따라서 위와 같은 방식에는 이러한 오류가 있음을 참고하십시요.

댓글을 작성하려면 로그인해야 합니다.