728x90
반응형
* 문제의 저작권은 SW Expert에 있습니다.
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
[ 문 제 ]
월 일로 이루어진 날짜를 2개 입력 받아, 두 번째 날짜가 첫 번째 날짜의 며칠째인지 출력하는 프로그램을 작성하라.
[제약 사항]
월은 1 이상 12 이하의 정수이다. 각 달의 마지막 날짜는 다음과 같다.
1/31, 2/28, 3/31, 4/30, 5/31, 6/30, 7/31, 8/31, 9/30, 10/31, 11/30, 12/31
두 번째 날짜가 첫 번째 날짜보다 항상 크게 주어진다.
[ 입 력 ]
가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
각 테스트 케이스의 첫 번째 줄에는 4개의 수가 주어진다.
첫 번째 수가 월을 나타내고 두 번째 수가 일을 나타낸다. 그 다음 같은 형식으로 두 번째 날짜가 주어진다.
[ 출 력 ]
출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)
[ 전체 코드 ]
calendar = {'1': 31, '2': 28, '3': 31, '4': 30, '5': 31, '6': 30, '7': 31, '8': 31, '9': 30, '10': 31, '11': 30, '12': 31}
for i in range(1, int(input())+1):
cd = tuple(map(int, input().split()))
result = 0 - cd[1] - (calendar[str(cd[2])] - cd[3]) + 1
for j in range(cd[0], cd[2]+1):
result += calendar[str(j)]
print("#{} {}".format(i, result))
calendar에 대해 정의를 Dictionary 형태로 선언 후 문제 풀이 하였다.
728x90
반응형
'Study > Algorithm 문제풀이' 카테고리의 다른 글
[SW Expert Academy] 1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기(using python) (0) | 2021.02.11 |
---|---|
[SW Expert Academy] 1946. 간단한 압축 풀기(using python) (0) | 2021.02.11 |
[SW Expert Academy] 1976. 시각 덧셈(using python) (0) | 2021.02.11 |
[SW Expert Academy] 1983. 조교의 성적 매기기(using python) (0) | 2021.02.09 |
[SW Expert Academy] 1928. Base64 Decoder(using python) (0) | 2021.02.09 |