// 점수를 받아줄 배열
double scores[] = new double[num];
// 점수에서 가장 큰 값을 찾아 담아줄 변수
double maxScore = Arrays.stream(scores).max().getAsDouble();
// 점수들을 계산해 += 해줄 sum
double sum = 0;
// 사용한다고 객체 생성하고
StringTokenizer st = null;
// 공백을 기준으로 문자열을 쪼개 넣을것이라고 작성한 것이다.
st = new StringTokenizer(br.readLine(), " ");
// 방법 1
int max = -999;
for(int i=0; i<scores.length; i++) {
if (max < 비교값) {
max = 비교값;
} else {
continue;
}
}
// 방법 2
Arrays.sort(scores);
double maxScore = scores[scores.length-1];
// 방법 3
double maxScore = Arrays.stream(scores).max().getAsDouble();
실제 제출 코드에서는 3번째 방법을 사용했다.
제출코드
public class Home {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
double scores[] = new double[num];
// 한 줄에 구분자를 경계로 여러 값을 입력할 것이기 때문에
// 공란을 경계로 값을 입력 받을 것이다
// StringTokenizer 객체 선언
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
for(int i=0; i<scores.length; i++) {
// 배열에 직접 버퍼리더를 불러와 넣는것이 아닌
// 토큰을 불러와서 값을 넣어준다.
scores[i] = Double.parseDouble(st.nextToken());
}
double maxScore = Arrays.stream(scores).max().getAsDouble();
double sum = 0;
for(int i=0; i<scores.length; i++) {
sum += ((scores[i]/maxScore)*100);
}
}
}