Skip to content

Instantly share code, notes, and snippets.

@miku
Forked from endolith/gcd_and_lcm.py
Created August 22, 2016 12:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save miku/f5db50400429b5703d42d91d28098120 to your computer and use it in GitHub Desktop.
Save miku/f5db50400429b5703d42d91d28098120 to your computer and use it in GitHub Desktop.
GCD and LCM functions in Python
# Greatest common divisor of more than 2 numbers. Am I terrible for doing it this way?
def gcd(*numbers):
"""Return the greatest common divisor of the given integers"""
from fractions import gcd
return reduce(gcd, numbers)
# Least common multiple is not in standard libraries? It's in gmpy, but this is simple enough:
def lcm(*numbers):
"""Return lowest common multiple."""
def lcm(a, b):
return (a * b) // gcd(a, b)
return reduce(lcm, numbers, 1)
# Assuming numbers are positive integers...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment