[JAVA] 백준 10818 : 최소, 최대

hanni66·2022년 1월 9일
1

Algorithms/BOJ/JAVA

목록 보기
1/9
post-thumbnail

문제

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

입력

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

출력

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

코드

import java.util.Scanner;

public class baek_10818 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int array[] = new int[N];
		
		for(int i=0;i<N; i++) {
			array[i] = sc.nextInt();
		}
        
        	int min = array[0];
        	int max = array[0];
		
		for(int j=0; j<array.length; j++) {
			if(min > array[j]) {
				min = array[j];
			}
			if(max < array[j]) {
				max = array[j];
			}
		}
        
		System.out.print(min + " " + max);
        sc.close();
	}
}

풀이

정수의 개수 N을 입력받습니다.
N의 크기 만큼의 배열 array를 선언해줍니다.
N만큼 반복하는 반복문에 넣어 정수를 입력해 array에 넣어줍니다.

min, max 변수에 비교를 할 대상으로 array의 0번째 인덱스의 값을 넣어줍니다.

array의 크기 만큼 반복하는 반복문 안에서 조건문을 사용해 min과 max의 값을 정해줍니다.

미리 있었던 0번째 인덱스 값과 반복문을 돌며 array의 값을 비교해 min값과 max값을 정하게 됩니다.

마지막으로 공백으로 구분해 최솟값(min)과 최댓값(max)을 출력해줍니다.

백준 링크

10818번: 최소, 최대

0개의 댓글