티스토리 뷰
728x90
반응형
백준 온라인 저지(BOJ) 4344번 평균은 넘겠지
https://www.acmicpc.net/problem/4344
4344번: 평균은 넘겠지
각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. 정답과 출력값의 절대/상대 오차는 10-3이하이면 정답이다.
www.acmicpc.net
* 사용언어 : java, 자바
1. 문제
C번의 테스트 케이스
N명의 점수를 입력받고, 평균을 넘는 학생의 비율을 소수점 넷째자리 반올림하여 출력
2. 풀이
1) 여러 개의 테스트 케이스를 처리하기 위해
바깥 쪽에서 C를 입력 받아서 for문을 돌립니다.
for문에서 반복을 시작할 때, 초기화가 필요한 변수들을 초기화를 해줍니다.
점수를 담는 배열 scores는 n을 입력받고 0부터 n-1까지의 값만 입력받고 사용하기 때문에
굳이 초기화를 할 필요가 없습니다.
2) 이제 for문 안쪽을 생각해보겠습니다.
입력 받으면서 누가 평균보다 높은 지 한 번에 처리한다면 좋겠는데,
모든 점수를 입력받지 않으면 평균을 구할 수가 없죠.
그래서 어쩔 수 없이 입력을 모두 받고 (그러면서 total에 더해줍니다)
평균을 구한 후에, 다시 for문을 돌면서 평균과 각 점수를 비교해줍니다.
평균보다 크면 count를 1 올려주고, 아니면 넘어갑니다.
출력에서는 printf 메서드를 써서 간단하게 반올림을 처리할 수 있습니다.
형식을 맞추기 위해(% 붙이고 한 줄 개행) println 메서드도 사용했습니다.
3. 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int c = sc.nextInt();
int n, total, count;
double avg;
int scores[] = new int[1000];
for (int i = 0; i < c; ++i) {
n = sc.nextInt();
total = 0;
count = 0;
for (int j = 0; j < n; ++j) {
scores[j] = sc.nextInt();
total += scores[j];
}
avg = (double)total / n;
for (int j = 0; j < n; ++j) {
if (scores[j] > avg) count++;
}
System.out.printf("%.3f", 100.0 * count / n);
System.out.println("%");
}
sc.close();
}
}
728x90
반응형
'개발자 > 문제풀이 (Java)' 카테고리의 다른 글
[백준/BOJ] 4673번 셀프 넘버 (java) (2) | 2018.01.23 |
---|---|
[백준/BOJ] 1110번 더하기 사이클 (java) (6) | 2018.01.22 |
[백준/BOJ] 1546번 평균 (java) (5) | 2018.01.08 |
[백준/BOJ] 10871번 X보다 작은 수 (java) (0) | 2018.01.06 |
[백준/BOJ] 10817번 세 수 (java) (1) | 2018.01.04 |
댓글
반응형
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 문현공
- 자동차보험
- 인간본성불패의법칙
- 나의첫죽음학수업
- 쿠프마케팅
- 센터독서클럽
- 정세현의통찰
- 당신도느리게나이들수있습니다
- 알고리즘
- 긴 자리 덧셈 뺄셈
- 삼성전자
- JUNGOL
- 안전운전특약
- 세상을 읽는 새로운 언어 빅데이터
- 정올
- 독서감상평
- 독서 감상평
- 동탄에듀센터2
- 영화감상평
- AdSendse
- 시대예보
- 나는늘잘해야한다고생각한다
- 호암의마지막꿈
- 관계가상처가되기전에
- 동탄에듀센터
- 유연함의힘
- 여가포인트
- 긴 자리 곱셈
- 자료구조
- 최재천의공부
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함