반응형
Notice
Recent Posts
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

500error

[COS Pro 2급, Python] 1차 3번 : 시작 날짜와 끝 날짜의 사이 날짜구하기 본문

알고리즘/파이썬

[COS Pro 2급, Python] 1차 3번 : 시작 날짜와 끝 날짜의 사이 날짜구하기

Internal Server Error 2024. 1. 2. 20:11
반응형

문제

 

시작 날짜와 끝 날짜가 주어질 때, 두 날짜가 며칠만큼 떨어져 있는지(D-day)를 구하려 합니다. 이를 위해 다음과 같이 3단계로 간단히 프로그램 구조를 작성했습니다. (단, 윤년은 고려하지 않습니다.)
  • 1단계. 시작 날짜가 1월 1일로부터 며칠만큼 떨어져 있는지 구합니다.
  • 2단계. 끝 날짜가 1월 1일로부터 며칠만큼 떨어져 있는지 구합니다.
  • 3단계. (2단계에서 구한 날짜) - (1단계에서 구한 날짜)를 구합니다.
시작 날짜의 월, 일을 나타내는 startmonth, startday, 끝 날짜의 월, 일을 나타내는 endmonth, endday가 매개변수로 주어질 때, 시작 날짜와 끝 날짜가 며칠만큼 떨어져 있는지 return 하도록 solution 함수를 작성했습니다. 이때, 위 구조를 참고하여 중복되는 부분은 func_a라는 함수로 작성했습니다. 코드가 올바르게 동작할 수 있도록 빈칸을 알맞게 채워주세요.

 

 

code

def func_a(month, day):
	month_list = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
	total = 0;
	for i in range(month - 1):
		total += month_list[i]
	total += day
	return total - 1

def solution(start_month, start_day, end_month, end_day):
	start_total = func_a(start_month, start_day)
	end_total = func_a(end_month, end_day)
	return end_total - start_total

start_month = 1
start_day = 2
end_month = 2
end_day = 2
ret = solution(start_month, start_day, end_month, end_day)

print("solution 함수의 반환 값은", ret, "입니다.")
반응형
Comments