[ Baekjoon ] 2562번 ( Bronze II ) : 최댓값 (Java)

ma.caron_g·2021년 12월 13일
0
post-thumbnail

1. Problem 📃

[ 최댓값 ]

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


[ 문제 ]

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

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

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

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


2. Input 📇

[ 입력 ]

첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다.


3. Output 📠

[ 출력 ]

첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다.


4. Example 📚

[ 입출력 예시 ]

예제 입력예제 출력
3
29
38
12
57
74
40
85
61
85
8

5. Solution 🔑

  1. 입력되는 값들은 자연수이므로 가장 큰 값을 담아줄 변수(max)를 0으로 초기화하여 선언한다. (최댓값을 구분하는 문제는 문제의 조건을 잘 보고 초기화 해줄 값을 잘 정해줘야함)
    몇 번째 수 인지 알려줄 변수(order)도 선언해준다.

  2. 총 9개를 받으므로 for문을 9번 돌려서 입력 된 수랑 max값을 비교하여 입력 된 값이 더 크다면 max값을 입력받은 값으로 수정하고 몇 번째 수인지 인덱스+1 값을 order변수에 담아주고 최종 출력에 max와 order값을 출력한다.

6. Code 💻

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));
		
		int max =0;
		int order = 0;
		int num = 0;
		for(int i=0; i<9; i++) {
			StringTokenizer st = new StringTokenizer(br.readLine());
			num = Integer.parseInt(st.nextToken());
			if(num > max) {
				max = num;
				order = i+1;
			}
		}
		System.out.print(max + "\n" + order);

	}

}
profile
다른 사람이 만든 것을 소비하는 활동보다, 내가 생산적인 활동을 하는 시간이 더 많도록 생활화 하자.

0개의 댓글