아이디어
정렬 문제이다.
선택 방법은 서로 영향이 없다고 되어있기 때문에 원본을 훼손하지 않는 sorted를 사용했고,
선행 정렬 조건이 중복되는 경우 후행 정렬 조건이 존재하기 때문에 lambda를 사용했다.
풀이
n = int(input())
miniatures = []
for _ in range(n):
q, p = map(int, input().split())
miniatures.append((q, p))
first = sorted(miniatures, key=lambda x: (-x[0], x[1]))
first_choice = first[:2]
second = sorted(miniatures, key=lambda x: (x[1], -x[0]))
second_choice = second[:2]
print(first_choice[0][0], first_choice[0][1], first_choice[1][0], first_choice[1][1])
print(second_choice[0][0], second_choice[0][1], second_choice[1][0], second_choice[1][1])
'학습 노트 > 알고리즘 (Python)' 카테고리의 다른 글
99클럽 - 롤케이크 자르기, 주차 요금 계산 (0) | 2024.04.27 |
---|---|
99클럽 - 역습 (0) | 2024.04.26 |
99클럽 - H-Index, 프로세스 (0) | 2024.04.24 |
99클럽 - 제리와 톰1 (0) | 2024.04.22 |
99클럽 - 행렬 테두리 회전하기 (0) | 2024.04.22 |