티스토리 뷰
728x90
https://www.acmicpc.net/problem/2822
- 문제 :
상근이는 퀴즈쇼의 PD이다. 이 퀴즈쇼의 참가자는 총 8개 문제를 푼다. 참가자는 각 문제를 풀고, 그 문제를 풀었을 때 얻는 점수는 문제를 풀기 시작한 시간부터 경과한 시간과 난이도로 결정한다. 문제를 풀지 못한 경우에는 0점을 받는다. 참가자의 총 점수는 가장 높은 점수 5개의 합이다.
상근이는 잠시 여자친구와 전화 통화를 하느라 참가자의 점수를 계산하지 않고 있었다. 참가자의 8개 문제 점수가 주어졌을 때, 총 점수를 구하는 프로그램을 작성하시오.
- 풀이 :
구현 문제였습니다.
알고리즘의 흐릅입니다.
1. 8개의 점수를 [점수,문제번호]의 형태로 저정합니다.
2. 점수를 내림차순 정렬합니다.
3. 내림차순한 리스트의 5번째 요소까지 slice하여 sum을 출력합니다.
4. 내림차순한 리스트의 5번째 요소까지 silce한 상태에서 key를 문제 번호인 x[1]로 하여 오름차순 정렬하여 join으로 출력 양식에 맞게 출력합니다.
- 소스코드 :
score = [[int(input()),i] for i in range(1,9)]
score.sort(reverse=True)
print(sum(i[0] for i in score[:5]))
print(' '.join(map(str,[i[1] for i in sorted(score[:5],key = lambda x : x[1])])))
320x100
'Algorithm > Implementation' 카테고리의 다른 글
(Python/파이썬) - 백준(BOJ) 17144번 : 미세먼지 안녕! (0) | 2022.04.19 |
---|---|
(Python/파이썬) - 백준(BOJ) 2018번 : 수들의 합 5 (0) | 2022.04.14 |
(Python/파이썬) - 백준(BOJ) 2480번 : 주사위 세개 (3) | 2022.04.12 |
(Python/파이썬) - 프로그래머스 : 점프와 순간이동 (0) | 2022.04.11 |
(Python/파이썬) - 백준(BOJ) 4659번 : 비밀번호 발음하기 (0) | 2022.04.11 |
댓글
© 2022 WonSeok, All rights reserved