P.2609 최대공약수와 최소공배수

castlehi·2022년 2월 22일
0

CodingTest

목록 보기
4/67
post-thumbnail

2609 최대공약수와 최소공배수

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 128 MB56311331732691060.172%

문제

두 개의 자연수를 입력받아 최대 공약수와 최소 공배수를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에는 두 개의 자연수가 주어진다. 이 둘은 10,000이하의 자연수이며 사이에 한 칸의 공백이 주어진다.

출력

첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.

예제 입력 1

24 18

예제 출력 1

6
72

코드

import java.io.*;
import java.util.Arrays;

public class P_2609 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

        int[] array = Arrays.stream(br.readLine().split(" ")).mapToInt(Integer::parseInt).toArray();

        int a = array[0];
        int b = array[1];

        int gcd = 1, lcm = 0;

        for (int i = 2; i <= (Math.min(a, b)); i++) {
            if (a % i == 0 && b % i == 0)
                gcd = i;
        }
        lcm = a * (b / gcd);
        bw.write(gcd + "\n");
        bw.write(Integer.toString(lcm));
        bw.flush();
    }
}
profile
Back-end Developer

0개의 댓글

관련 채용 정보