🧩 Algorithm/[BOJ] Bronze

BOJ 4344번 : 평균은 λ„˜κ² μ§€ (C++/Bronze 1)

devCloud 2022. 8. 11. 17:41
 

4344번: 평균은 λ„˜κ² μ§€

λŒ€ν•™μƒ μƒˆλ‚΄κΈ°λ“€μ˜ 90%λŠ” μžμ‹ μ΄ λ°˜μ—μ„œ 평균은 λ„˜λŠ”λ‹€κ³  μƒκ°ν•œλ‹€. 당신은 κ·Έλ“€μ—κ²Œ μŠ¬ν”ˆ μ§„싀을 μ•Œλ €μ€˜μ•Ό ν•œλ‹€.

www.acmicpc.net

문제

λŒ€ν•™μƒ μƒˆλ‚΄κΈ°λ“€μ˜ 90%λŠ” μžμ‹ μ΄ λ°˜μ—μ„œ 평균은 λ„˜λŠ”λ‹€κ³  μƒκ°ν•œλ‹€. 당신은 κ·Έλ“€μ—κ²Œ μŠ¬ν”ˆ μ§„싀을 μ•Œλ €μ€˜μ•Ό ν•œλ‹€.

 

μž…λ ₯

첫째 μ€„μ—λŠ” ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€μ˜ 개수 Cκ°€ μ£Όμ–΄μ§„λ‹€.

λ‘˜μ§Έ 쀄뢀터 각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ§ˆλ‹€ ν•™μƒμ˜ 수 N(1 ≤ N ≤ 1000, N은 μ •μˆ˜)이 첫 수둜 μ£Όμ–΄μ§€κ³ , μ΄μ–΄μ„œ Nλͺ…μ˜ μ μˆ˜κ°€ μ£Όμ–΄μ§„λ‹€. μ μˆ˜λŠ” 0보닀 ν¬κ±°λ‚˜ κ°™κ³ , 100보닀 μž‘κ±°λ‚˜ 같은 μ •μˆ˜μ΄λ‹€.

 

좜λ ₯

각 μΌ€μ΄μŠ€λ§ˆλ‹€ ν•œ 쀄씩 평균을 λ„˜λŠ” ν•™μƒλ“€μ˜ λΉ„μœ¨μ„ λ°˜μ˜¬λ¦Όν•˜μ—¬ μ†Œμˆ˜μ  μ…‹μ§Έ μžλ¦¬κΉŒμ§€ 좜λ ₯ν•œλ‹€.


예제 μž…λ ₯

5
5 50 50 70 80 100
7 100 95 90 80 70 60 50
3 70 90 80
3 70 90 81
9 100 99 98 97 96 95 94 93 91

예제 좜λ ₯

40.000%
57.143%
33.333%
66.667%
55.556%

풀이

● cout << fixed : μ†Œμˆ˜μ μ„ κ³ μ •μ‹œν‚¨λ‹€.

● cout.precision(n) : μ†Œμˆ˜μ  nμžλ¦¬κΉŒμ§€ ν‘œν˜„ν•œλ‹€.

● 좜λ ₯ μ‹œ, νΌμ„Όν…Œμ΄μ§€(%)λ₯Ό μ“°λŠ” 것에 μ£Όμ˜ν•œλ‹€.

 

Solution

#include <iostream>
using namespace std;

int main() {
    int C, N, score[1000];
    double ave = 0, cnt = 0;
    cin >> C;
    for(int i=0; i < C; i++){
        cin >> N;
        for(int j=0; j<N; j++){
            cin >> score[j];
            ave += score[j]; 
        }
        for(int k=0; k<N; k++){
            if(ave/N < score[k])
               cnt++;
        }
        cout << fixed;
        cout.precision(3);
        cout << (cnt/N)*100 << "%" << "\n";
        ave = 0, cnt = 0;
    }
    return 0;
}