Hikenny25
18110 - solved.ac 본문
https://www.acmicpc.net/problem/18110
18110번: solved.ac
5명의 15%는 0.75명으로, 이를 반올림하면 1명이다. 따라서 solved.ac는 가장 높은 난이도 의견과 가장 낮은 난이도 의견을 하나씩 제외하고, {5, 5, 7}에 대한 평균으로 문제 난이도를 결정한다.
www.acmicpc.net
오랜만에 들어가봤는데 새로운 문제가 추가돼서 풀어보앗다..
import sys
input = sys.stdin.readline
def round_custom(x):
v1 = x - int(x)
if v1 >= 0.5:
return int(x+1)
else:
return int(x)
def thirty_percent(x):
return round_custom(x * 0.15)
n = int(input())
if n == 0:
print("0")
exit()
data = [int(input()) for _ in range(n)]
data.sort()
var = thirty_percent(n)
s = 0
for i in range(n-2*var):
s += data[i+var]
print(round_custom(s/(n-2*var)))
정렬 후 그대로 문제를 따라하면 된다..
참고로 파이썬의 round 함수는 사사오입을 완벽하게 만족하지 않아서 따로 만들어 써주는게 편하다!
+ 오랜만이라 까먹고 있던 건데 파이썬 input이 느려서 많은 케이스를 받는 경우에 TLE가 나므로 위 두줄을 입력해주어야 한다..
'baekjoon (solved.ac) > class 2 AllSolve' 카테고리의 다른 글
18111 - 마인크래프트 (0) | 2022.10.26 |
---|---|
2805 - 나무 자르기 (0) | 2022.10.24 |
1654 - 랜선 자르기 (0) | 2022.10.24 |
2839 - 설탕 배달 (0) | 2022.10.23 |
2869 - 달팽이는 올라가고 싶다 (0) | 2022.10.22 |