본문 바로가기
백준

[백준] 단계별로 풀어보기(단계:5,1차원 배열,JAVA)10818번, 최소, 최대

by 열정적인 이찬형 2021. 12. 13.

문제 링크

10818번: 최소, 최대
 
www.acmicpc.net

주의사항

  • JAVA를 사용하여 프로그램을 사용하였습니다.
  • 백준에서 코드를 작성하였을 때 아래 형태에서 Main에서 결과가 출력되어야 합니다.
public class Main{ 	
	public static void main(String[] args){
    }
}

문제 설명


접근 방법

  • BufferedReader를 사용하여 입력값을 저장합니다.
  • int형으로 변환하여 배열의 크기값을 받고 그에 맞는 배열을 형성하였습니다.
  • 배열에 들어갈 정수가 -1000000보다 크고 1000000보다 작으니 max값과 min을 사이 값에 해당하지 않게 주었습니다.
  • 반복문을 사용하여 배열에 값을 대입시켰으며 Math함수를 사용하여 최대값과 최소값도 구하였습니다.
  • 결과값을 BufferedWriter를 사용하여 출력하였습니다.

결과 코드

import java.util.*;
import java.io.*;
import java.math.*;
public class Main{
    public static void main(String[] args)throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        //입력 값을 받는 BufferedReader
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        //결과 값을 출력하는 BufferedWriter
        int index = Integer.parseInt(br.readLine());		//배열 크기값
        int[] arr = new int[index];		//배열 형성
        String text = br.readLine();		//배열에 들어갈 값들
        StringTokenizer st = new StringTokenizer(text, " ");
        int max=-1000001,min=1000001;		//최솟값과 최대값 형성
        for(int i=0;i<index;i++){		//배열 값 입력 및 최대값 최소값 구하기
            arr[i] = Integer.parseInt(st.nextToken());
            max = Math.max(max,arr[i]);
            min = Math.min(min,arr[i]);
        }
        bw.write(min + " " + max);		//결과 출력
        bw.flush();
        bw.close();
        br.close();
    }
}

댓글