반응형
츄르사려고 코딩하는 코집사입니다.
1. [백준 알고리즘] 백준 1037번 약수 자바(Java)
1) 문제번호 : 1037번
2) 문제 출처
2. 문제
양수 A가 N의 진짜 약수가 되려면, N이 A의 배수이고, A가 1과 N이 아니어야 한다. 어떤 수 N의 진짜 약수가 모두 주어질 때, N을 구하는 프로그램을 작성하시오.
3. 제약사항
-
4. 입력
첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다.
5. 출력
첫째 줄에 N을 출력한다. N은 항상 32비트 부호있는 정수로 표현할 수 있다.
6. 풀이
- 입력값에서 1과 자기 자신인 N을 받지 않으므로, 약수에서 최소값과 최대값을 곱해주면 된다.
- 즉, 8의 약수는 1, 2, 4, 8 인데 1과 8은 받지 않으므로 2와 4를 곱하면 된다.
- 20의 약수는 1, 2, 4, 5, 10, 20인데 1과 20은 받지 않으므로 2와 10을 곱하면 된다.
7. 소스 코드
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int count = sc.nextInt(); //약수의 개수
int[] arr = new int[count];
for(int i=0;i<count;i++) {
arr[i] = sc.nextInt();
}
Arrays.sort(arr);
//최대
int max = arr[count-1];
//최소
int min = arr[0];
System.out.println(max*min);
}
}
반응형
'알고리즘 > 백준 알고리즘' 카테고리의 다른 글
[백준 알고리즘] 백준 20053번 최소, 최대 2 자바(Java) (0) | 2021.03.30 |
---|---|
[백준 알고리즘] 백준 1021번 회전하는 큐 자바(Java) (0) | 2021.03.29 |
[백준 알고리즘] 백준 1309번 동물원 자바(Java) (0) | 2021.03.29 |
[백준 알고리즘] 백준 1094번 막대기 자바(Java) (0) | 2021.03.27 |
[백준 알고리즘] 백준 14502번 연구소 자바(Java) (1) | 2021.03.26 |
[백준 알고리즘] 백준 1912번 연속합 자바(Java) (0) | 2021.03.26 |
[백준 알고리즘] 백준 4097번 수익 자바(Java) (0) | 2021.03.26 |
[백준 알고리즘] 백준 11404번 플로이드 자바(Java) (0) | 2021.03.25 |
최근댓글