Algorithm/백준
[백준] 1037번 약수
sirius
2021. 2. 8. 13:32
https://www.acmicpc.net/problem/1037
1037번: 약수
첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되
www.acmicpc.net
약수의 특징을 알아보자
24의 약수 = { 1, 2, 3, 4, 6, 8, 12, 24 }
- 1 * 24 = 24
- 2 * 12 = 24
- 3 * 8 = 24
- 4 * 6 = 24
문제에서 1 과 N 이 진짜 약수가 아니라는 말은 입력값에 1, 24가 들어오지 않는다는 말이다.
따라서 24의 진짜 약수는 { 2, 3, 4, 6, 8 12 }
최소값과 최대값을 곱하면 쉽게 구할 수 있다.
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
int count = sc.nextInt();
int min = 0;
int max = 0;
for(int i = 0; i < count; i++) {
int num = sc.nextInt();
if(i == 0) {
min = num;
max = num;
} else {
min = Math.min(min, num);
max = Math.max(max, num);
}
}
System.out.println(min * max);
}
}