๋ฌธ์
๋ํ์ ์๋ด๊ธฐ๋ค์ 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();
}
}