ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 10039번 : 평균 점수
    알고리즘 공부/백준 Python 코딩테스트 2021. 10. 12. 13:54

    [ 문제 ]

    상현이가 가르치는 아이폰 앱 개발 수업의 수강생은 원섭, 세희, 상근, 숭, 강수이다.

    어제 이 수업의 기말고사가 있었고, 상현이는 지금 학생들의 기말고사 시험지를 채점하고 있다.
    기말고사 점수가 40점 이상인 학생들은 그 점수 그대로 자신의 성적이 된다.
    하지만, 40점 미만인 학생들은 보충학습을 듣는 조건을 수락하면 40점을 받게 된다.
    보충학습은 거부할 수 없기 때문에, 40점 미만인 학생들은 항상 40점을 받게 된다.

    학생 5명의 점수가 주어졌을 때, 평균 점수를 구하는 프로그램을 작성하시오

    [ Input ]

    입력은 총 5줄로 이루어져 있고, 원섭이의 점수, 세희의 점수, 상근이의 점수, 숭이의 점수, 강수의 점수가 순서대로 주어진다.

    점수는 모두 0점 이상, 100점 이하인 5의 배수이다. 따라서, 평균 점수는 항상 정수이다.

    [ Output ]

    첫째 줄에 학생 5명의 평균 점수를 출력한다.


    [ 풀이 ]

    numpy의 array를 사용해서 mean을 구해도 되고 들어올때마다 값을 더해도 되지만 나는 list를 이용해서 평균을 구했다.

     

    점수를 저장할 list 변수를 먼저 할당하고 5명의 점수를 받아야하므로 for 문을 이용해서 5번 반복한다.

    40점 미만일 경우 score에 40을 저장하고 score_list에 각각 저장한다.

    list에는 mean 명령어가 없으므로 우선 값들을 모두 합하고 list의 길이로 나눈다.

    물론 5명이라고 지정되어 있으므로 5로 나눠도 되지만 나중에 학생의 수가 달라질 경우를 대비해서 len으로 나눈다.

    [ 코드 ]

    # 점수 저장할 list
    score_list = []
    
    # 학생의 개별 점수 받기
    for _ in range(5):
        # score input
        score = int(input())
        # 40점 미만일 경우 점수는 40점
        if score < 40:
            score = 40
        
        # 점수를 list에 저장
        score_list.append(score)
        
    # 평균 계산
    mean = sum(score_list) / len(score_list)
    print(int(mean))

    '알고리즘 공부 > 백준 Python 코딩테스트' 카테고리의 다른 글

    2480번 : 주사위 세개  (0) 2021.10.13
    1934번 : 최소공배수  (0) 2021.10.13
    2753번 : 윤년  (0) 2021.10.12
    1789번 : 수들의 합  (0) 2021.10.12
    11653번 : 소인수분해  (0) 2021.10.08

    댓글

Designed by Tistory.