suheang

[백준] | JAVA, 자바 | 9076번 - 점수 집계 본문

알고리즘

[백준] | JAVA, 자바 | 9076번 - 점수 집계

suheang 2024. 8. 8. 21:30

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


문제 요약 :

5명의 심판이 1점부터 10점까지 정수의 점수를 주면 최고점과 최저점을 하나씩 제외한 점수의 합을 총점으로 하였다. 이를 보완하기 위해서 최고점과 최저점을 뺀 나머지 3명 점수의 최고점과 최저점의 차이가 4점 이상 나게 되면 점수 조정을 거쳐서 다시 점수를 매기려고 한다. 점수를 집계하여 총점을 계산하거나, 점수 조정을 거쳐서 다시 점수를 매기려고 하는 경우에는 총점 대신 KIN(Keep In Negotiation)을 출력하는 프로그램을 작성


문제 풀이 :

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int t = Integer.parseInt(br.readLine());
        for (int i = 0; i < t; i++) {
            StringTokenizer st = new StringTokenizer(br.readLine());
            int[] score = new int[5];
            for (int j = 0; j < score.length; j++) {
                score[j] = Integer.parseInt(st.nextToken());
            }
            Arrays.sort(score);

            if (score[3] - score[1] >= 4) {
                System.out.println("KIN");
            } else {
                int sum = score[1] + score[2] + score[3];
                System.out.println(sum);
            }
        }
    }
}

 

1. 테스트 케이스의 개수 t 입력받고 t 만큼 점수 5개 입력받기
2. 입력받은 점수를 저장한 배열을 정렬
3. 만약 score[3] - score[1]의 값이 4보다 크거나 같다면 KIN 출력
4. 그렇지 않다면 변수 sum에 score[1] + score[2] + score[3]의 값을 저장
5. sum 출력