Shiny Sky Blue Star

백준 문제 풀이/백준 (JAVA)

JAVA 백준 1037 약수 (심화 2)

gamja00 2024. 7. 2. 00:19


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


문제

  1. 첫째 줄에 N의 약수의 개수 n(임의 지정, 1 <= n <= 50)개 입력
  2. 둘째 줄에 N의 약수 n개 공백으로 구분하여 입력 (2 <= 약수 <= 1000000), 중복 없음.
  3.  첫째 줄에 N 출력.

 

약수에 1과 자기 자신은 포함되지 않으므로 가장 작은 수와 가장 큰 수를 곱하면 N이 될 것이다.

 

최종 코드

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

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int min = 1000000, max = 0;
        int num = Integer.parseInt(br.readLine());

        StringTokenizer st = new StringTokenizer(br.readLine());
        br.close();

        for (int i = 0; i < num; i++) {
            int temp = Integer.parseInt(st.nextToken());

            if (min > temp) {
                min = temp;
            }

            if (max < temp) {
                max = temp;
            }
        }

        System.out.println(min * max);
    }
}