공부 자료/알고리즘

(Python/파이썬) 백준 2822번 - 점수 계산

뚜루뚜루세니 2021. 8. 13. 12:18
728x90

문제출처: https://www.acmicpc.net/problem/2822

 

2822번: 점수 계산

8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문

www.acmicpc.net

1. 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
score = [int(input())for _ in range(8)]
#내림차순 정렬
score_ = sorted(score, reverse=True)
#다섯번째 큰 수 까지 더해줌
total = sum(score_[:5])
 
index=[]
for i in range(5):
    index.append(score.index(score_[i])+1)
index.sort()
 
print(total)
for i in index:
    print(i,end=' ')
 
cs

 

2. 해결과정

score에 점수를 입력받아주고, score_에 내림차순으로 정렬해준다. 다섯번째 큰 수 까지 더해서 total에 대입을 해주면 된다.

최종 점수에 포함되는 문제 번호를 출력하기 위해서 index라는 리스트를 생성하고, score에 있는 원소들과 score_에 있는 원소들 중 같은 것 끼리 index를 모아서 저장해주고, 반복문을 통해서 sort된 인덱스들을 출력해주면 된다.

 

3. 느낀점

인덱스를 조절하는 것이 좀 헷갈렸다.

728x90