ascode 1112 다이빙 점수 매기기

1 분 소요

문제 설명

주형이는 한국 다이빙협회의 공정한 판정을 위해 점수 집계 시스템을 고치기로 하였다. 주형이가제안한 아이디어는 다음과 같다. 7명의 심판이 0점부터 10점까지 정수의 점수를 주게 되는데, 그 중에서 최고점과 최저점을 뺀 나머지 5명 점수를 이용하여 최종 점수를 매기려고 한다. 그런데 만약 5명의 점수들 중 최고점과 최저점의 차이가 5점 이상 나게 되면 5명의 점수에서 최고점과 최저점을 다시 뺀 다음 3명의 점수로 평균을 내서 최종 점수를 계산하고, 그렇지 않으면 5명의 점수로 평균을 내서 최종 점수를 계산한다. 주형이를 도와주기 위해 7명 심판의 점수가 입력될 때 이 방식에 의해 최종 점수를 출력하는 프로그램을 작성하시오.

입력 설명

첫 번째 줄에 테스트케이스의 개수 T(1 <= T <= 10)가 입력된다. 그 다음 줄에 7개의 정수(0 이상, 10 이하)가 한 줄씩 해서 모두 T 줄 입력된다.

출력 설명

각 테스트케이스 별로 최종 평균 점수를 한 줄씩 출력한다. 평균값 계산에서 소수점 이하는 버린다.

입력 예시

2
1 2 3 4 5 6 7
0 1 7 10 2 3 5

출력 예시

4
3

코드

#include<stdio.h>

int main() {
	int a,result = 0, min = 0, max = 0;
    int arr[7];
	scanf("%d", &a);
	for (int i = 0; i < a; i++) {
        for (int i = 0; i < 7; i++) {
            scanf("%d", &arr[i]);
            result = result + arr[i];
        }

        min = arr[0];
        max = arr[0];

        for (int d = 0; d < 7; d++)
        {
            if (arr[d] > max) {
                max = arr[d];
            }
            if (arr[d] < min) {
                min = arr[d];
            }
        }
		printf("%d\n",(result - max - min) /5);
        result = 0, min = 0, max = 0;
	}
	return 0;
}

댓글남기기