알고리즘 및 자료구조/백준(BackJoon)

백준 -2562번

지팡구 2022. 8. 5. 02:55

 

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

 

2562번: 최댓값

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

www.acmicpc.net

 

설명 : 

입력받은 9개의 서로 다른 자연수 중 최댓값을 찾고, 그 값이 몇번째 수인지를 찾아라 (입력되는 자연수는 100보다 작다)

 

내 생각 : 

입력수가 고정이고, 최대값을 찾고, 그 값이 몇번째 있는지 찾기 위해선 배열이 필요하다 생각했다. 이 전의 문제와 동일하게  max 값을 주고 문제를 해결했는데 꼭 저 값이 아니더라도 음수의 값을 줘도 된다. 그 이유는 서로 다른 자연수를 입력받기 때문이다

 

자연수 9개를 저장할 배열을 선언하고, 값을 입력받고 Int형으로 변환함과 동시에 배열에 저장했다.

조건문을 이용해 max값을 찾게되고 코드를 확인하게 되면 count를 선언한 것이 있다. 선언 이유는 몇 번째인지 요소를 확인하기 위해 count 변수를 선언했다.

 

내가 작성한 코드는 다음과 같다.

    // 2562 번
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int max=-1000001;
        int count=0;
        int [] arr= new int[9];

        for(int i=0; i<9; i++){
            arr[i]=Integer.parseInt(br.readLine());
            if(arr[i]>max){
                max=arr[i];
                count=i+1;
            }
        }
        System.out.println(max);
        System.out.println(count);

 

반복문을 통해 값을 저장하고, 조건문을 통해 최댓값을 찾고, 그 값이 몇 번째 위치했는지 count를 통해 나타내었다.

그리고 마지막으로 출력까지 

 

조금만 생각하면 정말 간단하게 해결할 수 있는 문제이다. 

'알고리즘 및 자료구조 > 백준(BackJoon)' 카테고리의 다른 글

백준 - 3052번  (0) 2022.08.08
백준 - 1546번  (0) 2022.08.07
백준 - 2577번  (0) 2022.08.05
백준 - 10818번  (0) 2022.08.05
백준 2588번 - 곱셈 (Scanner와 BufferedReader)  (0) 2022.07.27