티스토리 뷰
반응형
이번 문제 또한 문제 이해 자체는 그리 어렵지 않을 것이다.
바로 코드로 들어가보자.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Q4344 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
int sum=0;
double average=0;
double aboveAverage=0;
for (int i = 0; i < N; i++) {
StringTokenizer st = new StringTokenizer(br.readLine());
int num = Integer.parseInt(st.nextToken());
double[] arr = new double[num];
sum=0;
aboveAverage=0;
for(int j=0; j<num; j++) {
arr[j] = Integer.parseInt(st.nextToken());
sum+=arr[j];
// 평균 넘는 갯수 구해서 aboveAverage/num*100 출력
}
average = sum/num; // 평균 구하기
for(int j=0; j<arr.length; j++) {
if(arr[j]>average) {
aboveAverage++;
}
}
System.out.printf("%.3f%s%n",aboveAverage/num*100,"%");
}
}
}
코드 자체도 이해하는데 큰 어려움은 없을 것이다.
N(테스트 케이스)을 입력받아
첫번째 for문을 돌린다.
하나의 테스트케이스에
학생 수가 정해져있으므로
num를 st.nextToken()으로 받고
다시 한 번 for 반복문을 돌린다.
(num번만큼)
arr를 만들어서 값을 집어넣고
sum(합계) 변수에 arr각 값을 더한다.
📌
평균 = 총점 / 학생 수
이므로
average = sum/num으로 평균을 구하고
aboveAverage : 평균 이상인 학생을 카운팅하는 변수
점수가 평균보다 높으면 aboveAverage를 증가시킨다.
출력문은
.3f가 소수점 셋째자리까지 나타내겠다는 의미이고,
,뒤에 있는 aboveAverage/num*100의 값이 소수점 셋째자리까지 출력된다.
%s는
java의 printf문에서
문자열을 출력할 때 사용하는 값으로
위의 코드에선
"%"
가 출력된다.
딱히 어려운 점은 없을 것이다.
출력결과를 보자.
잘 출력되는 것을 볼 수 있다.
자 그럼 실행결과를 보자.
실행결과
딱히 어려운 문제는 아니었다.
문제를 잘 읽으면 수식을 찾을 수 있는 문제였다.
문제를 읽을 때 간단한 알고리즘과 수식은
생각하면서 읽는 습관을 계속 들여야겠다.
문제를 보다 이해가 안되거나 설명이 이상한 부분이 있다면 댓글을 활용해주길 바란다.
😊
반응형
'코딩테스트 > 백준 자바' 카테고리의 다른 글
[코딩테스트] 백준 자바 11047번 (0) | 2022.06.07 |
---|---|
[코딩테스트] 백준 자바 11654번 (0) | 2022.05.19 |
[코딩테스트] 백준 자바 8958번 (0) | 2022.03.21 |
[코딩테스트] 백준 자바 1546번 및 내가 문제를 푸는 방식 (0) | 2022.03.18 |
[코딩테스트] 백준 자바 3052번 (0) | 2022.03.18 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- ORM
- queue
- hackerrank challenges
- BAEKJOON
- 자바의 정석
- 해커랭크 자바
- 풀이
- 22 정보처리 산업기사
- 디버깅
- JPA
- 그리디
- 해커랭크 챌린지
- 22 정보처리산업기사
- 챌린지
- 자바
- Java
- 백준
- hackerrank
- LinkedList
- 해커랭크
- 개발자
- 정보처리 산업기사
- 정보처리산업기사
- 해커랭크 자바 챌린지
- stack
- 코드
- 강의
- 정보처리산업기사 공부법
- challenges
- 소스코드
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함