Java/Java 알고리즘

백준 9076번 점수집계 JAVA 구현해보기

kimc 2022. 2. 4. 00:10

```

백준 9076번 점수 집계 JAVA 구현해보기

```

이번 글을 통해 배워갈 내용

  1.  백준 9076번 풀이

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

 

9076번: 점수 집계

입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 각 테스트 케이스는 한 줄에 다섯 심판이 준 점수 다섯 개의 정수 Ni(1 ≤ Ni ≤ 10, i = 1, 2, ..., 5)가 하나의 공백을 사이에 두고

www.acmicpc.net

 

 

 

백준 9076번 점수 집계는 

난이도 브론즈 등급의 문제로서

 

리스트를 입력받고

앞뒤로 가장 낮은 수와 가장 높은 수를 빼고

최고점과 최저점의 차가 4점 이상 나면 KIN을 출력하고

아니라면

합을 출력하면 되는 문제입니다.

 


30분 정도 위에 링크를 방문하셔서 풀어보시고

안 풀리시는 경우에만 아래 해답을 봐주시면 감사하겠습니다.


입력받고

최고점과 최저점을 빼고

리스트에 넣어주고

정렬을 해준 다음

문제 조건에 맞게 

최소점과 최대점 차이가 4 이상 나면 KIN

그 외의 경우 합을 출력하면 되는 문제입니다.

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class Main {
    static final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

    public static void main(String[] args) throws IOException {

        int testCase = Integer.parseInt(br.readLine());

        for (int i = 0; i < testCase; i++) {

            // 입력 및 정렬
            List<Integer> numList = Stream.of(br.readLine().split("\\s+"))
                    .map(Integer::valueOf)
                    .sorted(Comparator.naturalOrder())
                    .collect(Collectors.toList());

            //최고점과 최저점을 뺀 나머지 3명 점수의 최고점과 최저점의 차이가 4점 이상 나게 되면
            if ((numList.get(3) - numList.get(1)) >= 4) {
                System.out.println("KIN");
            } else {
                System.out.println(
                        numList.stream().mapToInt(Integer::valueOf).sum() - numList.get(0) - numList.get(4)
                );
            }
        }
    }

}

 

 

읽어주셔서 감사합니다

 

무엇인가 얻어가셨기를 바라며

 

오늘도 즐거운 코딩 하시길 바랍니다 ~ :)

 


 

728x90