Menu
CoddyTech

Greatest Common Divisor

양의 정수 a와 b가 주어집니다. 두 수를 모두 나머지 없이 나누는 가장 큰 정수인 최대공약수를 반환하세요.

예를 들어, 8과 12를 모두 나누는 수는 1, 2, 4이므로 답은 4입니다.

함수

gcd(a: integer, b: integer) → integer
ainteger
첫 번째 양의 정수
binteger
두 번째 양의 정수
반환값integer
a와 b를 모두 나누는 가장 큰 정수

제약 조건

  • 1 ≤ a ≤ 109
  • 1 ≤ b ≤ 109

예제

입력
a = 12b = 18
출력
6
설명
12의 약수는 1, 2, 3, 4, 6, 12이고, 18의 약수는 1, 2, 3, 6, 9, 18입니다. 두 목록에서 가장 큰 수는 6입니다.
challenge icon

후속 질문

유클리드 알고리즘을 확장하여 a × x + b × y = gcd(a, b)를 만족하는 정수 x와 y도 반환할 수 있나요?

코드 초기화
def gcd(a, b):
    # 여기에 코드를 작성하세요

테스트 #1

테스트 #2

테스트 #3

인자들

a = 12
b = 18

예상 출력

6