최대 1 분 소요

1. 문제

[Bronze II] 가장 쉬운 문제를 찾는 문제 - 22966

문제 링크

성능 요약

메모리: 30840 KB, 시간: 72 ms

분류

구현(implementation)

문제 설명

예선 문제를 성실하게 복습한 학생들이라면 예선에 출제된 5문제가 난이도 순서대로 정렬되어 있다는 것을 알아차렸을 것이다.

하지만 본선은 문제 제목에 대해 사전순으로 정렬했기 때문에 난이도 순서대로 정렬되어 있지 않을 수 있다.

문제 제목과 문제의 난이도가 주어지면 가장 쉬운 문제의 제목을 출력하는 프로그램을 작성하자.

문제의 난이도는 자연수로 표현되며, 수가 클수록 어려운 문제다.

입력

첫째 줄에 문제의 개수 N이 주어진다.

둘째 줄부터 N개의 줄에 문제 제목과 문제 난이도가 공백으로 구분되어 주어진다.

출력

가장 쉬운 문제의 제목을 출력한다.

출처: 백준, https://https://www.acmicpc.net/

2. 해결방법 시간복잡도

  1. 단순 코딩 O(NlogN)

3. 문제 해결 및 코드


  • 주석을 참고하면서 이해를 돕습니다.

4. 알고리즘 및 해설

  1. 입력값만큼 반복문이 돌아가는 동안 이름과 문제 난이도를 받는다.
  2. 이후 해당 값들을 리스트에 리스트형태로 이름과 난이도는 정수형으로 삽입한다.
  3. 해당 리스트를 lambda를 통해 정렬해준뒤 전체 리스트에서 제일 앞자리에 있는 (가장 쉬운) 문제의 제목을 출력해준다.