[PYTHON] 1546 평균

    https://www.acmicpc.net/problem/1546

     

    1546번: 평균

    첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보

    www.acmicpc.net

    문제 풀이

    • 공백으로 구분하여 점수들을 리스트에 저장한다.
    • 점수 중 최댓값을 변수에 저장한다.
    • map을 활용하여 입력 값 리스트에 요소를 하나씩 최댓값으로 나누고 100을 곱한 값을 저장한다.
    • 위 리스트의 합계를 계산하고 과목의 개수 N개로 나눠 평균값을 출력한다.

    solution

    import sys
    t = int(sys.stdin.readline().strip())
    
    Nber_list = list(map(int, sys.stdin.readline().strip().split()))
    
    # 최댓값
    max_Nber = max(Nber_list)
    
    # 입력값 요소 하나씩 최댓값으로 나누고 100을 곱해줌
    new_Nber_list = list(map(lambda x : x/max_Nber*100, Nber_list)) # [50.0, 100.0, 75.0]
    
    print(sum(new_Nber_list)/t) # 75.0

    댓글