[최소공배수]-1934번
1934번: 최소공배수
두 자연수 A와 B에 대해서, A의 배수이면서 B의 배수인 자연수를 A와 B의 공배수라고 한다. 이런 공배수 중에서 가장 작은 수를 최소공배수라고 한다. 예를 들어, 6과 15의 공배수는 30, 60, 90등이 있
www.acmicpc.net
My answer
import sys
n=int(input())
for i in range(n):
a,b=map(int,sys.stdin.readline().split())
c=a*b
while(b!=0):
if(b>a): a,b=b,a
a=a%b
a,b=b,a
print(c//a)
Another answer
import math
for _ in[0]*int(input()):
print(math.lcm(*map(int,input().split())))
더보기
나는 얼마전 알고리즘에 작성한 유클리드 호제법을 이용해서 최대공약수를 구하고 두 수의 곱을 최대공약수로 나눠서 최소공배수를 구했는데, 아래 코드는 math라이브러리를 이용해서 그냥 최소공배수 함수를 이용했다. 역시 파이썬은 함수를 많이 알 수록 훨씬 간편한 것 같다.
Algorithms-[Euclidean algorithm & The Sieve of Eratosthenes ]
오늘은 은근 자주 나오는 유클리드 호제법과 에라토스테네스의 체에 대해서 설명해보겠다. 우선 유클리드 호제법은 최대공약수를 구하는 알고리즘이다. 최대공약수를 알면 최소공배수도 쉽게
changsroad.tistory.com
728x90
반응형
'코딩테스트 > 백준[Python]' 카테고리의 다른 글
[Python/백준] #9613- [GCD 합] (0) | 2021.12.04 |
---|---|
[Python/백준] #1850- [최대공약수] (0) | 2021.12.04 |
[Python/백준] #1158- [요세푸스 문제] (0) | 2021.12.04 |
[Python/백준] #1406- [에디터] [try_again] (0) | 2021.12.03 |
[Python/백준] #11656- [접미사 배열] (0) | 2021.12.02 |