[프로그래머스] 최대공약수와 최소공배수 (Kotlin)
- ETC../문제 풀이
- 2021. 2. 16.
728x90
문제
이해
두수 n, m
최대 공약수 / 최소공배수 반환 : Array
접근
- 최대 공약수 함수 작성
- 유클리드 호제법
- 나눴을때 나머지가 0이 될때까지 재귀 함수 돌리기
- 최소 공배수 함수 작성
- 두수의 곱 / 최대공약수
- return
풀이
class Solution {
fun solution(n: Int, m: Int): IntArray {
return intArrayOf(gcm(n, m), lcm(n, m))
}
fun gcm(a: Int, b: Int): Int {
var maximum = max(a, b)
var minimum = min(a, b)
if (minimum == 0) {
return maximum
} else {
return gcm(minimum, maximum % minimum)
}
}
fun lcm(a: Int, b: Int): Int =
(a * b) / gcm(a, b)
}
728x90
'ETC.. > 문제 풀이' 카테고리의 다른 글
[프로그래머스] 하샤드 수 (Kotlin) (0) | 2021.02.23 |
---|---|
[프로그래머스] 콜라츠 추측 (Kotlin) (0) | 2021.02.16 |
[프로그래머스] 키패드 누르기 (Kotlin) (0) | 2021.02.15 |
[프로그래머스] 제일 작은 수 제거하기 (Kotlin) (0) | 2021.02.12 |
[프로그래머스] 정수 제곱근 판별 (Kotlin) (0) | 2021.02.12 |