[백준] 2566번 최댓값 Java 문제 풀이

2023. 1. 30. 18:12알고리즘/백준

728x90
반응형

문제풀이

import java.util.Scanner;

interface Main {
    public static void main (String[] args) {
        Scanner sc = new Scanner(System.in);
        int max = 0, num = 0, row = 1, column = 1;

        for(int i=1; i<=81; i++) {
            num = sc.nextInt();
            if(num > max) {
                max = num;
                row = i%9==0?i/9:i/9+1;
                column = i%9==0?9:i%9;
            }
        }

        System.out.println(max);
        System.out.println(row + " " + column);
    }
}

9 X 9 크기가 고정입니다.

 

수를 입력받을 때마다 최댓값인지 확인을 하고,

최댓값이 맞으면 그 값과 위치를 기억하도록 했습니다.

 

예시로 나온 90의 위치는 순서대로 입력받았을 때 43번째로 입력받은 수입니다.

 

9로 나눴을 때 몫이 4이고, 9로 나눈 나머지는 7입니다.

 

그래서 i/9+1과 i%9를 사용하면 되지만 순서가 9의 배수일 경우 계속 0이 되므로 예외 처리를 해줬습니다.

 

 

출처 : https://www.acmicpc.net/problem/2566

 

2566번: 최댓값

첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다.

www.acmicpc.net

 

728x90
반응형