풀이
C = int(input())
for _ in range(C):
INPUT = list(map(int, input().split(" ")))
N = INPUT[0]
AVG = (sum(INPUT) - N) / N
del INPUT[0] # ★ 첫번째 요소는 삭제 필요
l = []
for s in INPUT:
if s > AVG:
l.append(s)
list_AVG = len(l)/N
print(format(list_AVG, ".3%"))
첫번째 요소를 삭제하지 않을 경우(del INPUT[0] 을 하지 않을 경우)의 반례
4 1 2 3 5
다른 풀이
for i in range(int(input())):
INPUT = list(map(int, input().split(' ')))
AVG = sum(list_input[1:]) / INPUT[0]
cnt = 0
for j in INPUT[1:]:
if j > AVG:
cnt += 1
print(str('%.3f' % round(cnt / INPUT[0] * 100, 3)) + '%')
주요개념
리스트의 평균
- 리스트 평균을 구하는 함수는 없다.
- sum(리스트)/len(리스트)
리스트 요소 삭제
- del 객체
- 예시1
>>> a = [1, 2, 3]
>>> del a[1]
>>> a
[1, 3]
- 예시2
>>> a = [1, 2, 3, 4, 5]
>>> del a[2:]
>>> a
[1, 2]
퍼센트 서식 지정하기(formatting as a percentage)
- format(숫자, ".n%")
- (숫자 * 100)을 소수점 n자리 까지 표기
>>> a = 0.235
>>> print(format(a, ".3%"))
23.500%
'인문학도 개발일지 > 1일1알고리즘' 카테고리의 다른 글
[알고리즘] 백준 10172: 개 파이썬 풀이 (0) | 2020.03.14 |
---|---|
[알고리즘] 백준 15596 : 정수 N개의 합 파이썬 풀이 (0) | 2020.03.05 |
[알고리즘] 백준 8958 : OX퀴즈 파이썬 풀이 (0) | 2020.03.04 |
[알고리즘] 백준 1546 : 평균 파이썬 풀이 (0) | 2020.02.17 |
[알고리즘] 백준 3052번: 나머지 풀이 및 파이썬주요개념 (0) | 2020.02.17 |