브론즈 5 문제부터 시작해서 차례 차례 단계를 높여가며 알고리즘 공부를 다시 본격적으로 시작할 계획이다
오늘은 그 첫문제로 4434 평균은 넘겠지를 풀어보았다
# 백준 4434 평균은 넘겠지[브론즈 1]
# 풀이 과정
우선 처음에는 평균보다 크거나 같은 것으로 구해서 답이 계속 이상하게 나왔다
평균 초과인 학생만 구하는 것이었다
그리고 숫자 타입을 어떤 것을 쓰느냐가 이 문제를 해결하는데 중요한 요소였다
처음에는 정답만 double형으로 선언하고 나머지는 int로 선언했더니 계속 답이 0.0% 가 나와서 조금 헤맸다
그리고 소수점 셋째 자리를 출력하는 방법을 알고 있어야 하는 문제다
# 자바 소수점 원하는 자리만큼 출력하는 방법
1. System.out.ptrintf() 사용
2. String.format() 사용
3. Math.round() 사용
# 정답 코드
package BRONZE;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int tc = sc.nextInt();
for(int t=1; t<=tc; t++) {
int num = sc.nextInt();
int [] arr = new int [num];
double sum = 0;
double avg = 0;
for(int i=0 ; i<num; i++) {
int temp = sc.nextInt();
arr[i] = temp;
sum += arr[i];
}
avg = sum / num;
double cnt = 0;
for(int i=0; i<num; i++) {
if(arr[i] > avg) {
cnt++;
}
}
System.out.printf("%.3f%%\n", (cnt/num)*100);
}
}
}
'알고리즘 > BeakJoon' 카테고리의 다른 글
[BOJ] 1159.농구 경기.java (0) | 2024.01.29 |
---|---|
[BOJ] 1000. A+B.js (2) | 2024.01.27 |
백준 2798 블랙잭 Java (0) | 2023.02.28 |
백준 2210 숫자판 점프 Java (0) | 2023.02.28 |
백준 11659 구간 합 구하기 4 Java (2) | 2023.02.24 |