[백준 / 1546] 평균
in Problem Solving on BaekJoon
날짜: 2021년 6월 13일
소요 시간: 19분 27초
카테고리: 수학문제
태그: bronze.1
, 1546
, 파이썬
입출력 예시
예제 입력 | 예제 출력 |
---|---|
3 | |
40 80 60 | 75.0 |
5 | |
1 2 4 8 16 | 38.75 |
2 | |
3 10 | 65.0 |
내가 적은 코드
import sys
n = input()
new = []
num = list(map(float, sys.stdin.readline().split()))
for i in range(0,len(num)):
new.append(num[i]/max(num)*100)
print(sum(new)/len(new))
풀이 과정
입력된 값을 num
에 float
값으로 저장한 뒤 (평균값의 소수점까지 연산하기 위해) 반복문을 통해서 각 원소의 연산을 진행한다.
그 후 원소의 각 연산된 값을 new
에 저장 한 뒤
평균값을 구하기 위해 new
의 원소의 합을 그 원소의 길이만큼 나눈다.
베스트 코드
n = int(input())
a=list(map(int, input().split()))
m = max(a)
for i in range(n):
a[i] = a[i]/m*100
print(sum(a)/n)
반성
map
의 타입과list
의 타입의 개념을 확실히 잡지 못해서 런타임를 내고 시간을 많이 잡아 먹었다.input()
보다sys.stdin.readline()
을 활용하는 연습을 더 많이 해야겠다.