언어/python
풀이2
파아랑새
2018. 9. 5. 23:49
"""
gcd : greatest common divisor : 최대 공약수
lcm : least common multiple : 최소 공배수
"""
import math
def main():
gcd, lcm = 0x0, 0x0
x, y = map(int, input("정수 입력: ").split(sep=" "))
# x를 큰 값으로 기준
if x < y:
x, y = y, x
# x가 y의 배수라면
if x%y == 0:
gcd, lcm = y, x
else: # x%y != 0
for i in range(1, int(math.sqrt(y))+1):
if x%i == 0:
gcd = i
lcm = (x//gcd) * (y//gcd) * gcd
print (gcd, lcm)
if __name__ == "__main__":
main()