728x90
https://www.acmicpc.net/problem/2609
문제에서 자세히 보기를 누르면 유클리드 호제법이라는 개념이 나온다. 자세한 내용은 밑에 링크해둔 유튜브를 보면 알 수 있다.
import Foundation
var num = readLine()!.split(separator: " ").map{ Int($0)!}
var max = num.max()!
var min = num.min()! // optional로 나오니 강제할당해야한다.
var c = max % min
while c != 0 {
max = min
min = c
c = max % min
} // 이 부분이 중요하다.
print(min)
print(num[0] * num[1] / min)
/**
최대공약수*최소공배수 = 두 수의 곱으로 볼 수 있다.
그래서 최소공배수를 구하려면 이항하여 구할 수 있다.
**/
728x90
728x90
'PS' 카테고리의 다른 글
11050번 이항계수 1 / swift (0) | 2022.10.03 |
---|---|
10828번 스택 / swift (0) | 2022.10.03 |
9012번 괄호 / swift (0) | 2022.10.02 |
2164번: 카드 2 / swift (0) | 2022.10.02 |
1920번 수 찾기 - swift (0) | 2022.09.30 |