article thumbnail image
Published 2021. 10. 26. 16:36

문제 풀이

문제 링크

http://icpc.me/1037

 

1037번: 약수

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

www.acmicpc.net

풀이 

짝이 되는 두 수를 찾아 서로 곱하면 원래의 수가 나오기 때문에 가장 작은 수와 가장 큰 수를 곱하면 된다.

코드

#include <cstdio>
#include <algorithm>

using namespace std;

int arr[52];

int main() {
    int n; scanf("%d", &n);
    for (int i = 0; i < n; i++) scanf("%d", arr + i);
    sort(arr, arr + n);
    printf("%d", arr[0] * arr[n - 1]);
}

'Algorithm > BOJ' 카테고리의 다른 글

백준[1676] 팩토리얼 0의 개수  (0) 2021.10.28
백준[20208] 진우의 민트초코우유  (0) 2021.10.27
백준[1270] 전쟁 - 땅따먹기  (0) 2021.10.22
백준[23247] Ten  (0) 2021.10.20
백준[20168] 골목 대장 호석 - 기능성  (0) 2021.10.20
복사했습니다!