알고리즘

[백준] 2566번 : 최댓값 _ JAVA ( 주석 설명 ) 본문

백준 - JAVA/2차원 배열

[백준] 2566번 : 최댓값 _ JAVA ( 주석 설명 )

wch_s 2023. 2. 3. 23:08

1번

→ 9*9 배열에서 최댓값과 위치(행,렬) 찾기

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;


public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st;

        int max = -1; //입력 범위가 0부터 시작하므로, 그보다 작은 값 -1로 설정한다.
        int row = 0; //행
        int column = 0; //열
        for (int i = 1; i <= 9; ++i) { //9*9 배열 반복을 한다.
            st = new StringTokenizer(br.readLine()); //StringTokenizer 객체는 소모적 객체이므로 개행마다 다시 생성해주도록 한다.
            for (int j = 1; j <= 9; ++j) {
                int num = Integer.parseInt(st.nextToken()); //입력받은 토크나이저 문자열에서 다음 토큰을 가져온다.
                if(num>max) { //기존 max 값보다 크면 max, row, column 값을 갱신해준다.
                    max = num;
                    row = i;
                    column = j;
                }
            }
        }
        System.out.println(max); //9*9 배열에서 최댓값을 출력한다.
        System.out.println(row + " " + column); //최댓값이 위치한 행과 열을 출력한다.
    }
}