Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬의 최대공약수

<시간/>

nums라고 하는 양수 목록이 있다고 가정하고 각 숫자를 나누는 가장 큰 양수를 찾아야 합니다.

따라서 입력이 [14,28,70,56]과 같으면 출력은 14가 됩니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • ans :=숫자의 첫 번째 요소
  • 숫자 단위의 각 x에 대해 다음을 수행합니다.
    • ans :=ans 및 x의 gcd
  • 반환

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

import math
class Solution:
   def solve(self, nums):
      ans = nums[0]
      for x in nums:
         ans = math.gcd(ans, x)
      return ans
ob = Solution()
print(ob.solve([14,28,70,56]))

입력

[14,28,70,56]

출력

14