[백준/파이썬] 2693. N 번째로 큰 수

jwKim·2023년 1월 17일
0

💻코테코테

목록 보기
26/42

< 과제 >

[ 문제 ]
배열 A가 주어졌을 때, N번째 큰 값을 출력하는 프로그램을 작성하시오.

배열 A의 크기는 항상 10이고, 자연수만 가지고 있다. N은 항상 3이다.

[ 입력 ]
첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 배열 A의 원소 10개가 공백으로 구분되어 주어진다. 이 원소는 1보다 크거나 같고, 1,000보다 작거나 같은 자연수이다.

[ 출력 ]
각 테스트 케이스에 대해 한 줄에 하나씩 배열 A에서 3번째 큰 값을 출력한다.

[ 예제 입력 1 ]
4
1 2 3 4 5 6 7 8 9 1000
338 304 619 95 343 496 489 116 98 127
931 240 986 894 826 640 965 833 136 138
940 955 364 188 133 254 501 122 768 408

[ 예제 출력 1 ]
8
489
931
768

< 내 코드 >

N = int(input())

As = [list(map(int, input().split())) for i in range(N)] # N번만큼 리스트 받기

for i in range(N):
    As[i].sort()
    print(As[i][-3])
  • 입력을 리스트 형태로 받고 As라는 리스트에 넣는다. 그러면 2차원 배열이 생성된다.
  • 반복문을 돌며 정렬을 하고 뒤에서 3번째 수를 출력한다.(오름차순 정렬이므로)

< 피드백 >

  • 리스트의 sort()를 사용하지 않고 구현해보려 했으나 실패했다. sort()를 사용하지 않고 직접 구연하는 방법을 연구해 봐야겠다.(백준에 정렬 관련 문제도 있는 것 같으므로 풀어보기)

< 출처 >

0개의 댓글