대표값/파이썬/Python/구현

heeee·2021년 1월 14일
0

algorithm

목록 보기
23/123
post-custom-banner

💡문제

N명의 학생의 수학점수가 주어집니다. N명의 학생들의 평균(소수 첫째자리 반올림)을 구하고,
N명의 학생 중 평균에 가장 가까운 학생은 몇 번째 학생인지 출력하는 프로그램을 작성하세
요.
평균과 가장 가까운 점수가 여러 개일 경우 먼저 점수가 높은 학생의 번호를 답으로 하고, 높
은 점수를 가진 학생이 여러 명일 경우 그 중 학생번호가 빠른 학생의 번호를 답으로 합니다.

입력

첫줄에 자연수 N(5<=N<=100)이 주어지고, 두 번째 줄에는 각 학생의 수학점수인 N개의 자연
수가 주어집니다. 학생의 번호는 앞에서부터 1로 시작해서 N까지이다.

출력

첫줄에 평균과 평균에 가장 가까운 학생의 번호를 출력한다.
평균은 소수 첫째 자리에서 반올림합니다.


예제입력

10
45 73 66 87 92 67 75 79 75 80

예제출력

74 7

📖내가 작성한 code

n=int(input())
score=list(map(int,input().split()))

avg=round(sum(score)/n)
min=max(score)

for i,v in enumerate(score):
    tmp=abs(v-avg)
    if tmp<min:
        min=tmp
        min_score=v
        student=i+1
    elif tmp==min:
        if min_score<v:
            min=tmp
            min_score=v
            student=i+1
print(avg,student)
post-custom-banner

0개의 댓글