kth990303   3년 전

우선 일이 끝나는 시각이 늦은 순대로 정렬을 했습니다.

이후, 일마다 가장 늦게 시작할 수 있는 시간들을 뽑고 그 중에서 가장 빠른 값을 뽑아냈습니다.

그리고, 모든 일을 하는데 걸리는 시간을 가장 늦게 끝내야되는 시각에서 빼서 위에서 뽑아낸 값이랑 더 빠른 시간을 답으로 했는데요 (이렇게 쓰니까 넘 어렵게 설명된 것 같네요.. 주석이랑 코드로 최대한 쉽게 풀어보았습니다)

이 코드의 논리가 어떤 점이 틀렸는지 잘 찾지 못하겠습니다. 일이 한 개일 때, 정렬이 뒤죽박죽일 때, 끝나는 시각이 같고 시간이 짬뽕일 때 등등의 테스트케이스를 만들어보았는데, 틀린 부분을 찾기가 쉽지 않네요.

고수분들 도와주십시오 ㅠㅠ

 

kth990303   3년 전

자문자답하게 됐네요. 다른 방법으로 해서 맞춘 후, 맞춘 제 코드와 틀린 제 코드를 비교하면서 반례를 찾았습니다.

틀린 코드는 아래와 같은 경우 답이 1로 떠서 최소값이 제대로 갱신이 안됐었습니다.

각자의 일에서만 빼버리니까 이런 현상이 발생하네요

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