반응형
문제 링크 : https://www.acmicpc.net/problem/2609
2609번: 최대공약수와 최소공배수
첫째 줄에는 입력으로 주어진 두 수의 최대공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.
www.acmicpc.net
풀이
최소공배수, 최대공약수 공식을 그대로 구현하면 된다.
코드
import Foundation
var input = readLine()!.split(separator: " ").map{ Int($0)! }
var a: Int = input[0]
var b: Int = input[1]
var tmp: Int = 0
var larger: Int = a >= b ? a : b
var smaller: Int = a < b ? a : b
//최대 공약수
while(true) {
if((larger % smaller) == 0){
print(smaller)
break
}
else {
tmp = larger % smaller
larger = smaller
smaller = tmp
}
}
//최소 공배수
print(a * b / smaller)
반응형
'Programming Solve > BOJ' 카테고리의 다른 글
BOJ 15829 - Hashing / C++ (0) | 2022.04.14 |
---|---|
BOJ 10816 - 숫자 카드 2 / C++ (0) | 2022.04.13 |
BOJ 5637 - 가장 긴 단어 / C++ (0) | 2022.04.10 |
BOJ 9342 - 염색체 / C++ (0) | 2022.04.10 |
BOJ 14405 - 피카츄 / C++ (0) | 2022.04.09 |