알고리즘

[알고리즘 Python] 프로그래머스 - 상호평가

gmwoo 2021. 12. 17. 12:05

 

프로그래머스 위클리 챌린지 2주차 문제입니다.

현재는 프로그래머스 내에서 문제를 풀 수가 없기 때문에 직접 구현하였습니다.

 

scores = [[100, 90, 98, 88, 65],
          [50, 45, 99, 85, 77],
          [47, 88, 95, 80, 67],
          [61, 57, 100, 80, 65],
          [24, 90, 94, 75, 65]]
resort_scores = []
avg_scores = []

for i in range(len(scores)):
    temp = []
    for j in range(len(scores)):
        temp.append(scores[j][i])
    resort_scores.append(temp)

for i, score in enumerate(resort_scores):
    temp = sorted(score)
    
    if score[i] == temp[0]: 
        if temp[0] == temp[1]: 
            avg_scores.append(sum(score)/len(score))
            continue
        else:
            temp.pop(0)
            avg_scores.append(sum(temp)/len(temp))
            continue
    
    if score[i] == temp[-1]: 
        if temp[-1] == temp[-2]: 
            avg_scores.append(sum(score)/len(score))
            continue
        else:
            temp.pop(-1)
            avg_scores.append(sum(temp)/len(temp))
            continue

    avg_scores.append(sum(score)/len(score))

for score in avg_scores:
    if score >= 90:
        print('A', end='')
    elif 80 <= score < 90:
        print('B', end='')
    elif 70 <= score < 80:
        print('C', end='')
    elif 50 <= score < 70:
        print('D', end='')
    else:
        print('F', end='')

 

 

반응형