Daily LeetCode Challenge - 1979. Find Greatest Common Divisor of Array

Min Young Kim·2023년 6월 29일
0

algorithm

목록 보기
184/198

Problem From.

https://leetcode.com/problems/find-greatest-common-divisor-of-array/

오늘 문제는 nums array 가 주어질때, 그 안에서 가장 작은 수와 가장 큰 수의 gcd 를 찾는 문제였다.

먼저 array 에서 최소값과 최대값을 찾은 다음에, 최소값에서 1씩 빼가면서 두 숫자가 모두 나누어 떨어지는지 검사하는 방법으로 문제를 해결하였다.

class Solution {
    fun findGCD(nums: IntArray): Int {
        
        var min = Int.MAX_VALUE
        var max = Int.MIN_VALUE
        
        nums.forEach {
            if(it < min) min = it
            if(it > max) max = it
        }
        
        for(i in min downTo 1) {
            if(max % i == 0 && min % i == 0) return i
        }
        
        return 0
    }
}
profile
길을 찾는 개발자

0개의 댓글