skyhp   4년 전

두 개의 기간이 입력 될 때, 겹치는 기간이 총 몇 일인지 구하는 프로그램을 구현 하는 문제입니다.

2차원 배열 input1, input2가 입력 됩니다.

[[1,1],[1,2]] 은 1월1일부터 1월 2일 까지 총 2일을,

[[1,2],[1,1]] 은 1월2일부터 1월 1일까지 총 365일을 의미합니다.

(단, 1년을 넘는 기간을 의미하는 경우는 없으며, 2월은 윤년을 고려하지 않고 모두 28일로 가정합니다.)

아래는 예시입니다.

제가 짠 코드도 잘 돌아가지만 더 좋은 방법이 있을까요?

기간 1 : [[1,3],[2,20]]   
기간 2 : [[3,5],[7,30]]   
답 : 0
기간 1 : [[1,2],[5,6]]   
기간 2 : [[3,3],[7,12]]   
답 : 65
기간 1 : [[11,2],[5,8]]   
기간 2 : [[11,20],[11,19]]   
답 : 188

chogahui05   4년 전

보통, 이러한 경우

날짜를 1970/1/1 0:0:0 UTC +0부터 초 단위로 변환해 주는 메서드가 있기는 합니다만..

시작 날짜를 기준 날짜로부터 ?일이 흘렀는지를 계산하고

끝나는 날짜 또한 기준 날짜로부터 ?일이 흘렀는지를 계산하면 될 거 같네요. 기준 날짜는 0년 1월 1일로 잡으셔도 되고..

-45억년 1월 1일로 잡으셔도 되고요.

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