hi jaeneee
BOJ_18110_solved.ac_python 본문
https://www.acmicpc.net/problem/18110
18110번: solved.ac
5명의 15%는 0.75명으로, 이를 반올림하면 1명이다. 따라서 solved.ac는 가장 높은 난이도 의견과 가장 낮은 난이도 의견을 하나씩 제외하고, {5, 5, 7}에 대한 평균으로 문제 난이도를 결정한다.
www.acmicpc.net
1) 문제
2) 예시
3) 제출
import sys
input = sys.stdin.readline
n = int(input())
difficulty = []
for i in range(0, n):
a = int(input())
difficulty.append(a)
difficulty.sort()
exceptNum = round(n * 0.15 + 0.000000001)
if n == 0:
result = 0
elif exceptNum == 0:
result = round(sum(difficulty)/len(difficulty) + 0.000000001)
else:
tmpSum = sum(difficulty[exceptNum:-exceptNum])
tmpPeople = (len(difficulty[exceptNum:-exceptNum]))
result = round(tmpSum/tmpPeople + 0.000000001)
print(result)
4) 메모리/시간/코드 길이
5) PLUS
첫 번째 틀린 이유 : n이 0일 경우를 생각하지 않음
-> n이 0일 경우엔 0을 출력할 수 있도록 함
두 번째 틀린 이유 : 파이썬 round 함수의 특징인 오사오입을 생각하지 않음
-> round 함수의 사사오입과 오사오입을 이해하고 코드에 영향을 미치지 않는 0.000000001 을 더해 원하는 반올림을 할 수 있도록 함
세 번째 틀린 이유 : li[0:-0]일 경우에는 li가 []이 된다는 것을 몰랐음
-> exceptNum(제외할 인원 수)가 0인 경우에는 전체 리스트를 계산해주도록 함
'알고리즘 > baekjoon' 카테고리의 다른 글
BOJ_1002_터렛_python (0) | 2023.07.15 |
---|---|
BOJ_1620_나는야 포켓몬 마스터 이다솜_python (0) | 2023.04.22 |
BOJ_10162_전자레인지_python_[그리디] (0) | 2023.04.15 |
BOJ_1715_카드 정렬하기_python_[그리디] (0) | 2023.04.13 |
BOJ_10610_30_python_[그리디] (0) | 2023.04.06 |
Comments