반응형
[ Contents ]
1. 문제 (링크 참조)
2. 문제 풀이
평균을 넘는 점수 비율을 출력하는 문제입니다.
2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학
간단한 수학문제입니다. 다만 입력/출력 형식이 조금 까다롭습니다. 한 줄로 학생의 수와 점수를 입력받으므로, 나누는 처리가 필요합니다. 또, 출력도 소수점 셋째 자리까지 반올림하고, % 형식도 지켜줘야 합니다.
3. 코드
C = int(input())
for i in range(C):
score = list(map(int, input().split()))
N = score.pop(0)
mean = sum(score)/N
cnt = 0 # 평균 넘는 인원
for j in score:
if j > mean:
cnt += 1
res = (cnt/N) * 100
print(f'{res:.3f}%')
한 줄 전체를 리스트로 입력받은 다음, 맨 앞 요소만 pop으로 빼냅니다. 출력은 f-string 문법을 사용합니다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int c = sc.nextInt();
for(int i = 0; i < c; i++) {
int n = sc.nextInt();
int[] arr = new int[n];
double sum = 0.0;
for(int j = 0; j < n; j++) {
arr[j] = sc.nextInt();
sum += arr[j];
}
double average = sum/(double)n;
int high = 0;
for(int j = 0; j < n; j++) {
if(arr[j] > average)
high++;
}
double average2 = ((double)high/(double)n) * 100.0;
System.out.println(String.format("%.3f", average2) + "%");
}
}
}
반응형
'Algorithm' 카테고리의 다른 글
[구현/수학] 백준 3052 나머지 - Python, Java (0) | 2022.01.27 |
---|---|
[Algorithm] 탐욕적인 그리디 알고리즘, 직관적이고 쉬운 문제해결 (0) | 2022.01.26 |
[수학/DP] 백준 2839 설탕 배달 - Python, Java (0) | 2022.01.25 |
[구현/수학] 백준 1546 평균 - Python, Java (0) | 2022.01.24 |
[구현/수학] 백준 2577 숫자의 개수 - Python, Java (0) | 2022.01.23 |
댓글