정수론과 조합론을 배워 봅시다.
Java / Python
약수의 성질을 활용하는 문제
이번 문제는 어떤 수 N의 진짜 약수가 모두 주어질 때, N을 구하는 문제입니다.
따라서 입력되는 약수 중 최솟값과 최대값을 곱해서 N을 구하는 방식으로 작성했습니다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
int min = Integer.MAX_VALUE;
int max = -1;
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
while(T-- > 0){
int n = Integer.parseInt(st.nextToken());
if(n > max) max = n;
if(n < min) min = n;
}
System.out.println(max * min);
}
}
import sys
T = int(sys.stdin.readline())
A = list(map(int, sys.stdin.readline().split()))
max_num = max(A)
min_num = min(A)
print(max_num * min_num)