백준(C, C++)/실버

백준 1037 약수, c++

치킨먹고싶어요 2022. 6. 2. 21:12

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

 

1037번: 약수

첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되

www.acmicpc.net

풀이:

prime의 square number과 그 외를 구분해주면 되는 문제입니다.

 

#include <iostream>
#include <vector>
#include <algorithm>
#define fastio() ios::sync_with_stdio(0),cin.tie(nullptr),cout.tie(nullptr);
using namespace std;
int main() {
    fastio();
    int n; cin >> n;
    vector<int> v(n);
    for (int i = 0; i < n; i++cin >> v[i];
    if (n == 1cout << v[0* v[0]; // square number of prime
    else {
        cout << *min_element(v.begin(), v.end()) * *max_element(v.begin(), v.end());;
    }
}
 
cs