최대공약수와 최소공배수 / Lv.1
문제 설명)
두 숫자를 입력으로 받고 두 숫자의 최대 공약수와 최소 공배수를 반환하는 함수 솔루션을 완성하십시오. 배열의 시작 부분에 최대 공약수를 놓고 최소 공배수를 넣고 반환합니다.
예를 들어 Solution(3, 12)는 두 숫자 3과 12의 최대 공약수가 3이고 최소 공배수가 12이기 때문에 (3, 12)를 반환해야 합니다.
제한)
- 두 숫자 모두 1에서 1000000 사이의 자연수입니다.
I/O 예)
I/O 예시 설명)
I/O 예제 #1
위에서 설명한대로.
I/O 예제 #2
자연수 2와 5의 최대 공약수는 1이고 최소 공배수는 10이므로 (1, 10)을 반환해야 합니다.
설명)
하나
2
삼
4
5
6
7
8일
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#포함하다 <선>
#포함하다 <벡터>
#포함하다 <연산>
사용 네임스페이스 기본;
벡터<내부> 해결책(내부 N, 내부 중) {
벡터<내부> 답변;
// n이 크면 교체
만약에 (N > m) 스왑(n, m);
// 최대공약수, 최소공배수
내부 GCD = 0LCM = 0;
~을 위한(내부 나 = 하나; 나 <= N; 나++)
{
만약에 (n% 나는 == 0 && m % i == 0) GCD = 나;
}
// 최소 공배수 찾기
LCM = N * 중 / GCD;
답변.푸시백(GCD);
답변.푸시백(LCM);
돌려 주다 답변;
}
|
CS |
원천 : https://school.programmers.co.kr/learn/courses/30/lessons/12940