[BOJ/Step5] 4344 : νκ· μ λκ² μ§ (JAVA)
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%
νμ΄
1. ν μ€νΈμΌμ΄μ€ numμ μ λ ₯λ°κ³ numμ κ°μλ§νΌ λ°λ³΅
2. νμμ μλ₯Ό μ λ ₯λ°κ³ νμμ μλ§νΌ ν¬κΈ°μ λ°°μ΄snumμ μμ±ν΄ μ μλ₯Ό μ μ₯. μ μλ₯Ό μ μ₯νλ©΄μ total μ λν¨
3. μ΄ ν©μ νμ μλ‘ λλμ΄ νκ· μ κ³μ°νκ³ , νκ· κ³Ό snumμ λΉκ΅νμ¬ νκ· λ³΄λ€ λμ μ μλ₯Ό κ°μ§ νμ μλ₯Ό count μ μ μ₯
4. λΉμ¨μ κ³μ°ν΄μ μμμ μ μ§Έμ리κΉμ§ λ²νΌμ μ μ₯
=> format() λ©μλ μ¬μ©
5. numλ§νΌ λͺ¨λ λ°λ³΅ν ν λ²νΌμ λ¨μ λ°μ΄ν°λ₯Ό μΆλ ₯
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.Scanner;
public class B4344 {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int num = sc.nextInt();
for(int i = 0; i < num; i++) {
int snum = sc.nextInt();
int count = 0;
double total = 0;
double[] score = new double[snum];
for(int j = 0; j < snum; j++) {
score[j] = sc.nextInt();
total += score[j];
}
double avg = (double)total / (double)snum;
for(int j = 0; j < snum; j++) {
if(score[j] > avg) {
count++;
}
}
double ratio = ((double)count / (double)snum) * 100 ;
String s = String.format("%.3f", ratio);
bw.write(s + "%\n");
}
bw.flush();
bw.close();
}
}