반응형
https://codeup.kr/problem.php?id=3019
1. 문제
날짜별를 기준으로 스케줄을 정리한 후 스케줄명을 출력하라.
2. 알고리즘
주어진 문자열을 날짜를 기준으로 정렬한 후 스케줄명을 출력한다. 년도, 월, 일, 스케줄명 사전순으로 비교하여 정렬한다.
3. 팁
python에서 제공하는 sorted함수를 사용하면 매우 쉽게 문제를 풀 수 있다. python에서 정렬 혹은 비교와 같은 함수들은 모두 기준(key)를 정할 수 있다.
4. 소스코드
# 입력처리
n = int(input())
schedules = [list(input().split()) for _ in range(n)]
# 년도기준으로 비교, 같으면 월로 비교, 같으면 일, 같으면 스케줄명 사전순으로 비교
schedules = sorted(schedules, key=lambda x: (int(x[1]), int(x[2]), int(x[3]), x[0]))
# 결과 출력
for i in schedules:
print(i[0])
반응형
'컴퓨터공학 > 알고리즘' 카테고리의 다른 글
[codeup] 3720. nCr (0) | 2020.04.20 |
---|---|
[codeup] 3014. 정렬을 빠르게 (0) | 2020.04.19 |
[codeup] 3004. 데이터 재정렬 (0) | 2020.04.19 |
[codeup] 3006. 완전 제곱수 찾기 (0) | 2020.04.19 |
Python Algorithm Session Curriculum (0) | 2020.04.10 |