본문 바로가기

Baekjoon/JAVA

[JAVA][BOJ/백준] 10818 최소, 최대

 

 

Baekjoon Online Judge

 

10818번: 최소, 최대

첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.

www.acmicpc.net

 

 

[문제]

N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.

 

 

[입력]

첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.

 

 

[출력]

첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.

 

 


 

[풀이]

for문을 이용하여 N개의 정수를 tmp 변수에 입력받으면서 

tmp가 min보다 작다면 min에 tmp를 대입하고,

tmp가 max보다 크다면 max에 tmp를 대입하면 된다.

 

주의할 점은 min의 초깃값은 1,000,000으로 설정하고

max의 초깃값은 -1,000,000으로 설정해야 한다는 점이다.

 

 

[코드]

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int N = in.nextInt();
        int min = 1000000, max = -1000000;

        for (int i = 0; i < N; i++) 
        {
            int tmp = in.nextInt();

            if (tmp < min)
                min = tmp;

            if (tmp > max)
                max = tmp;
        }

        System.out.printf("%d %d\n", min, max);
    }
}

 

 

 

'Baekjoon > JAVA' 카테고리의 다른 글

[JAVA][BOJ/백준] 2441 별 찍기 - 4  (1) 2024.01.14
[JAVA][BOJ/백준] 2588 곱셈  (0) 2024.01.12
[JAVA][BOJ/백준] 2557 Hello World  (1) 2024.01.11