처음부터 차근차근

평균 넘는 사람 비율 구하기 본문

알고리즘

평균 넘는 사람 비율 구하기

_soyoung 2022. 9. 24. 17:40
반응형

문제

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

 

4344번: 평균은 넘겠지

대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.

www.acmicpc.net

문제 읽으면서 뼈맞았다ㅋㅋㅋ

 

내 풀이

import java.io.*;
import java.util.*;

public class Main
{
    public static void main(String[] args) throws IOException {
       
        int num, arr_num, sum, st_num;
        int[] arr;
        double avg;
    
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        num = Integer.parseInt(br.readLine());
        
        for (int i = 0; i < num; i++) {
            sum = 0;
            st_num = 0;
            StringTokenizer st = new StringTokenizer(br.readLine());
            arr_num = Integer.parseInt(st.nextToken());
            arr = new int[arr_num];
            for (int j = 0; j < arr_num; j++) {
                arr[j] = Integer.parseInt(st.nextToken());
            }
            
            // 평균 구하기
            for (int j = 0; j < arr_num; j++) {
                sum += arr[j];
            }
            avg = (double)sum / arr_num;
            
            
            // 평균 넘는 학생 비율 구하고 출력
            for (int j = 0; j < arr_num; j++) {
                if (avg < arr[j]) {
                    st_num++;
                }
            }
            bw.write(String.format("%.3f", (double)st_num / arr_num * 100.0) + "%\n");
        }
        
        br.close();
        bw.flush();
        bw.close();
    }
}

풀면서도 이게 맞나... 했던 풀이

 

반응형

'알고리즘' 카테고리의 다른 글

구간 합 구하기  (0) 2022.10.07
평균 구하기  (0) 2022.09.27
최댓값, 최솟값 구하기  (0) 2022.09.22
투포인터 알고리즘  (0) 2022.09.15
DSDV 알고리즘과 Link State 알고리즘  (0) 2022.04.01
Comments