본문 바로가기
백준 Algorithm/백준 CLASS1

[백준] CLASS1 2562번 : 최댓값 - JAVA [자바]

by Echung 2023. 9. 23.

 안녕하세요. 이번에는 백준 2562 최댓값 문제를 풀어보려고 합니다.

 

https://www.acmicpc.net/problem/2562

 

2562번: 최댓값

9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어

www.acmicpc.net


Problem

 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.

예를 들어, 서로 다른 9개의 자연수

3, 29, 38, 12, 57, 74, 40, 85, 61

이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.


Solution

import java.io.*;
import java.util.*;

public class Main {
    
    static int pos = 0;
    static int max = Integer.MIN_VALUE;
    
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        
        for(int i = 1; i <= 9; i++) {
            int num = Integer.parseInt(br.readLine());
            
            check(num, i);    
        }
        
        sb.append(max + " \n");
        sb.append(pos);
        
        System.out.println(sb.toString());
    }
    
    public static void check(int num, int idx) {
        if(num > max) {
            pos = idx;
            max = num;
        }
    }
}

 

 초기에 max 값을 최저값으로 세팅 후 num 값을 받아 올 때마다 check 해주면서 num이 max 보다 크면 pos에 입력값의 위치인 idx 값을 넣고 max에는 num 값을 넣어주면서 주어진 값 들을 다 확인한 다음 max 값과 pos 값을 출력해 주면 문제를 해결할 수 있다.


Performance

사진 2. 출력 결과

반응형