Algorithm/Baekjoon(Java)

[백준/JAVA] 10818 : 최소, 최대 ( 배열 )

비망노트 2022. 7. 14. 19:56
문제

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

입력

첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다.

모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.

 

출력

첫째 줄에 N의 사이클 길이를 출력한다.

 

예제 입력 예제 출력
5
20 10 35 30 7
7 35

 

⭕ 풀이

import java.util.*;
import java.io.*;

public class Main{
    public static void main(String[] args)throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int tc = Integer.parseInt(br.readLine());
        int[] numArr = new int[tc];
        StringTokenizer st = new StringTokenizer(br.readLine());
        
        for(int i=0;i<tc;i++){
            numArr[i] = Integer.parseInt(st.nextToken());
        }
        int max = numArr[0];
        int min = numArr[0];
        for(int i=0;i<tc;i++){
            if(numArr[i]>max){
                max = numArr[i];
            }else if(numArr[i]<min){
                min = numArr[i];
            }
        }
        System.out.printf("%d %d",min,max);
    }
}

 

✅ 

1. 첫줄에 주어진 정수N개의 길이만큼 배열을 생성한다.

2. 반복문으로 생성한 배열에 입력값을 공백기준으로 잘라서 각 인덱스에 넣는다.

3. max값과 min값을 배열의 0번째 인덱스로 초기화하고

4. for문으로 i인덱스의 값이 크면 max에 작으면 min에 할당해주는 if문을 작성했다.

 

 

 

-출처

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

'Algorithm > Baekjoon(Java)' 카테고리의 다른 글

[백준/JAVA] 2577 : 숫자의 개수  (0) 2022.07.15
[백준/JAVA] 2562 : 최댓값  (0) 2022.07.14
[백준/JAVA] 1110 : 더하기 사이클  (0) 2022.07.13
[백준/JAVA] 10951 : A+B - 4  (0) 2022.07.12
[백준/JAVA] 10952 : A+B - 5  (0) 2022.07.12