코딩/백준 문제 (브론즈)
[백준/1037/C언어] 약수 _ 풀이
룻밤
2023. 8. 19. 15:48
https://www.acmicpc.net/problem/1037
1037번: 약수
첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되
www.acmicpc.net
풀이
#include <stdio.h>
int main() {
int na, a; // n의 약수개수, n의 진짜약수
int max = 1;
int min = 1000000;
scanf("%d", &na);
for (int i = 0; i < na; i++){ // na만큼 반복
scanf("%d", &a);
if (max < a) max = a; // 입력한 a중 최댓값
if (min > a) min = a; // 입력한 a중 최솟값
}
if (na == 1) printf("%d\n", a * a); // 약수 개수가 1개일때는 a제곱 출력
else printf("%d\n", max * min); // 최댓값 * 최솟값이 n
return 0;
}