[백준] 1037

당당·2023년 5월 10일
0

백준

목록 보기
93/179

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

📔문제

양수 AN의 진짜 약수가 되려면, NA의 배수이고, A가 1과 N이 아니어야 한다. 어떤 수 N의 진짜 약수가 모두 주어질 때, N을 구하는 프로그램을 작성하시오.


📝입력

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


📺출력

첫째 줄에 N을 출력한다. N은 항상 32비트 부호있는 정수로 표현할 수 있다.


📝예제 입력 1

2
4 2

📺예제 출력 1

8

📝예제 입력 2

1
2

📺예제 출력 2

4

📝예제 입력 3

6
3 4 2 12 6 8

📺예제 출력 3

24

📝예제 입력 4

14
14 26456 2 28 13228 3307 7 23149 8 6614 46298 56 4 92596

📺예제 출력 4

185192

🔍출처

-문제를 번역한 사람: baekjoon
-빠진 조건을 찾은 사람: doju
-어색한 표현을 찾은 사람: jh05013


🧮알고리즘 분류

  • 수학
  • 정수론

📃소스 코드

import java.util.Arrays;
import java.util.Scanner;

public class Code1037 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int N=sc.nextInt();
        int[] realD=new int[N];
        for(int i=0;i<N;i++){
            realD[i]=sc.nextInt();
        }
        Arrays.sort(realD);
        System.out.println(realD[0]*realD[N-1]);
    }
}

📰출력 결과


📂고찰

진짜 약수를 오름차순 정렬해서 제일 큰 수와 작은 수를 곱하면 N이 된다.

profile
MySQL DBA 신입 지원

0개의 댓글