SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
문제에서 두 번째로 오는 날짜가 무조건 첫 번째 날짜보다 크다고 했기 때문에 조건을 같은 달인 경우와 아닌 경우로 나누었습니다.
- 같은 달인 경우는 날짜만 구해주면 답이 됩니다.
- 다른 달의 경우는 첫 번째 날짜와 두 번째 날짜 사이의 일수를 모두 합친 것에 (첫 번째 날짜 - 그 달의 일수 + 두 번째 날짜)를 더해주면 됩니다.
T = int(input())
days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
for t in range(1, T + 1):
m1, d1, m2, d2 = map(int, input().split())
ans = 0
if m2 - m1 == 0:
ans += d2 - d1 + 1
else:
for i in range(m1, m2 - 1):
ans += days[i]
ans += d2 + (days[m1 - 1] - d1 + 1)
print('#%d %d' % (t, ans))
피드백은 언제나 환영합니다.
'알고리즘 > SWEA' 카테고리의 다른 글
[Python] SWEA D2 1966번 - 숫자를 정렬하자 (0) | 2022.06.02 |
---|---|
[Python] SWEA D2 1961번 - 숫자 배열 회전 (0) | 2022.06.02 |
[Python] SWEA D2 1940번 - 가랏! RC카! (0) | 2022.06.02 |
[Python] SWEA D2 1979번 - 어디에 단어가 들어갈 수 있을까 (0) | 2022.06.02 |
[Python] SWEA D2 1959번 - 두 개의 숫자열 (0) | 2022.06.02 |