모든 약수는 짝을 이룬다는 사실을 이용하면 된다.
예를 들어 28의 약수에는 1, 2, ..., 14, 28이 있다.
128 = 28, 그 다음 214 = 28과 같은 식이다.
이 문제에서 약수 중 1과 N이 제외됐으므로
1보다 큰 최솟값과 N보다 작은 최댓값의 곱이 N과 같다.
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n, d;
cin >> n;
int mini = 1e9;
int maxi = -1;
for (int i = 0; i < n; i++) {
cin >> d;
mini = min(mini, d);
maxi = max(maxi, d);
}
unsigned int ans = mini * maxi;
cout << ans;
return 0;
}