코딩테스트 연습 기록

이종길·2022년 2월 4일
0

코딩테스트 연습

목록 보기
66/128

2022.02.04 42일차

백준 1037번 (약수)

문제

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

나의 풀이

  1. 나온 약수 중에서 가장 작은 값과 큰 값 곱하기
  2. 약수가 한 개일 때는 제곱
import java.util.Arrays;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int N = scanner.nextInt();
        int[] nArr = new int[N];

        for (int i = 0; i < N; i++) {
            nArr[i] = scanner.nextInt();
        }

        Arrays.sort(nArr);

        if (nArr.length != 1) {
            System.out.println(nArr[0] * nArr[N - 1]);
        } else {
            System.out.println(nArr[0] * nArr[0]);
        }
    }
}

생각하기

profile
Go High

0개의 댓글

관련 채용 정보