문제 링크
주의사항
- JAVA를 사용하여 프로그램을 사용하였습니다.
- 백준에서 코드를 작성하였을 때 아래 형태에서 Main에서 결과가 출력되어야 합니다.
public class Main{
public static void main(String[] args){
}
}
문제 설명
접근 방법
- BufferedReader를 사용하여 입력값을 저장합니다.
- 점수 개수를 받아서 그 크기만한 배열을 만들었습니다.
- StringTokenizer를 사용하여 각 점수들을 배열에 저장하면서 최대값도 구하였습니다.
- cal 함수를 통하여 배열에 있는 값들을 조작된 점수로 구하여 모두 더하였습니다.
- 결과값을 System.out.println()을 사용하여 조작된 점수에 평균값을 출력하였습니다.
결과 코드
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//입력 값을 받는 BufferedReader
int index = Integer.parseInt(br.readLine()); //점수 개수
String score = br.readLine(); //점수
int max=-1;
float sum=0;
StringTokenizer st = new StringTokenizer(score," ");
int[] arr = new int[index];
for(int i=0;i<index;i++){ //점수들 배열에 저장 및 최대값 구하기
int num = Integer.parseInt(st.nextToken());
arr[i] = num;
if(num>max){
max = num;
}
}
for(int i=0;i<index;i++){ //조작한 점수 모두 더하기
float temp = cal(arr[i],max);
sum+=temp;
}
System.out.println(sum/index); //조작한 점수 평균값 출력
br.close();
}
public static float cal(int score,int max){ //점수 조작하기 함수
float result = (float)score/max * 100;
return result;
}
}
'백준' 카테고리의 다른 글
[백준] 단계별로 풀어보기(단계:5,1차원 배열,JAVA)4344번, 평균은 넘겠지 (0) | 2021.12.16 |
---|---|
[백준] 단계별로 풀어보기(단계:5,1차원 배열,JAVA)8958번, OX퀴즈 (0) | 2021.12.15 |
[백준] 단계별로 풀어보기(단계:5,1차원 배열,JAVA)3052번, 나머지 (0) | 2021.12.14 |
[백준] 단계별로 풀어보기(단계:5,1차원 배열,JAVA)2577번, 숫자의 개수 (0) | 2021.12.14 |
[백준] 단계별로 풀어보기(단계:5,1차원 배열,JAVA)2562번, 최댓값 (0) | 2021.12.13 |
댓글