[나의 풀이]
def gcd(a, b):
return b if a % b == 0 else gcd(b, a % b)
def lcm(a, b):
return int(a * b / gcd(a, b))
def solution(a, b):
return [gcd(a, b), lcm(a, b)]
[다른 풀이]
def solution(a, b):
c, d = max(a, b), min(a, b)
t = 1
while t > 0:
t = c % d
c, d = d, t
answer = [c, int(a * b / c)]
return answer
def solution(n, m):
gcd = lambda a,b : b if not a%b else gcd(b, a%b)
lcm = lambda a,b : a*b//gcd(a,b)
return [gcd(n, m), lcm(n, m)]
def gcdlcm(a, b):
def _gcd(x,y):
if y==0: return x
return _gcd(y,x%y)
g = _gcd(a,b)
return [ g, a*b//g ]
'workSpace > ALGORITHM' 카테고리의 다른 글
[Python][isdigit][isalpha] 문자열 다루기 기본 (0) | 2020.12.20 |
---|---|
[Python] 정수 제곱근 판별 (0) | 2020.12.20 |
[Python] 자릿수 더하기 (0) | 2020.12.20 |
[Python] 짝수와 홀수 (0) | 2020.12.20 |
[Python] 행렬의 덧셈 (0) | 2020.12.20 |