알고리즘/SWEA

[Python] SWEA D2 1983번 - 조교의 성적 매기기

번잔중 2022. 8. 21. 19:44
 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

T = int(input())
grade = ['A+', 'A0', 'A-', 'B+', 'B0', 'B-', 'C+', 'C0', 'C-', 'D0']
for t in range(1, T + 1):
    n, k = map(int, input().split())
    score = [list(map(int, input().split())) for _ in range(n)]
    data = []
    for s in score:
        data.append(s[0] * 0.35 + s[1] * 0.45 + s[2] * 0.2)

    k_score = data[k - 1]

    data.sort(reverse=True)
    ans = data.index(k_score) // (n // 10)
    print('#%d %s' % (t, grade[ans]))

- 입력받은 수를 조건에 맞게 변환하여 data 리스트에 추가해줍니다.

- 그 후 k번째 자리에 위치한 점수를 따로 저장한 후, data 리스트를 내림차순으로 정렬합니다.

- k번째 자리에 위치한 점수에 해당하는 data 리스트 인덱스를 n//10으로 나누어준 값을 ans에 저장합니다. 이것이 학점의 위치가 됩니다.

 

피드백은 언제나 환영합니다.