본문 바로가기
알고리즘/BOJ

[BOJ / 백준] 5800번 성적 통계 python / 파이썬 list 내림차순 정렬 슬라이싱

by seohmoon 2022. 7. 17.

출처 : https://www.acmicpc.net/problem/5800

 

5800번: 성적 통계

첫째 줄에 중덕 고등학교에 있는 반의 수 K (1 ≤ K ≤ 100)가 주어진다. 다음 K개 줄에는 각 반의 학생수 N (2 ≤ N ≤ 50)과 각 학생의 수학 성적이 주어진다. 시험 성적은 0보다 크거나 같고, 100보다

www.acmicpc.net

 


우선 입력으로 테스트 케이스를 받아주고 (클래스) 

클래스의 각 점수는 제일 처음을 제외해주고 슬라이싱 해줬다.

 

그리고 새로운 arr을 내림차순으로 정렬하고,

최대값은 0번째 최소값은 -1번째로 하고

차이는 Max를 사용해줬다.

 

출력은 f-string

# BOJ 5800 성적 통계
T = int(input())
for tc in range(1, T+1):
    arr = list(map(int, input().split()))
    arr = arr[1:]
    arr.sort(reverse=True)
    ans = 0
    for i in range(len(arr)-1):
        tem = arr[i] - arr[i+1]
        ans = max(ans, tem)
    print(f"Class {tc}")
    print(f"Max {arr[0]}, Min {arr[-1]}, Largest gap {ans}")

댓글