💡문제접근

  • 2중 반복문과 유클리드 호제법을 이용해 모든 두 수의 쌍의 최대공약수 중 가장 큰 값을 찾는 방법으로 코드를 작성했다.

💡코드(메모리 : 31256KB, 시간 : 60ms)

import sys
input = sys.stdin.readline

def GCD(a, b):
    if a > b:
        b, a = a, b
    while b > 0:
        a, b = b, a % b
    return a

N = int(input())
for _ in range(N):
    li = list(map(int, input().strip().split()))
    MAX = -1
    for a in range(len(li)):
        for b in range(a+1, len(li)):
            if MAX < GCD(li[a], li[b]):
                MAX = GCD(li[a], li[b])
    print(MAX)

💡소요시간 : 4m

0개의 댓글