성장일기

[python] 백준 9613 - GCD 합 본문

알고리즘 문제

[python] 백준 9613 - GCD 합

김몽몽 2021. 12. 27. 10:37

첫 줄에 테스트 케이스의 개수,

테스트 케이스의 수가 주어지고 n개의 수가 주어짐

각 테스트케이스마다 가능한 모든 쌍의 GCD 합 구하기

import sys
def gcd(a,b):  #최대공약수 함수(유클리드 호제법)
    if b==0:
        return a
    else:
        return gcd(b,a%b)
    
n=int(sys.stdin.readline().rstrip())
for i in range(n):
    a=list(map(int,sys.stdin.readline().split()))  # 리스트로 받아오기
    temp=0
    for j in range(1,len(a)):  #첫 수는 제외
        for k in range(1,len(a)):
            if j<k:  #모든 쌍을 구할 때(중복 없이)
                temp+=gcd(a[j],a[k])
            else:
                pass
    print(temp)

문제를 제대로 이해 못하고

첫번째 수를 포함해서 코드를 돌리고는 왜 안될까 고민했다

앞으로 문제를 꼼꼼히 잘읽자🤣

'알고리즘 문제' 카테고리의 다른 글

[python] 백준 1764 - 듣보잡  (0) 2021.12.27
[python] 백준 3036 - 링  (0) 2021.12.27
실버 3 🎉  (0) 2021.12.26
[python] 백준 11866 - 요세푸스 문제 0  (0) 2021.12.26
[python] 백준 11723 - 집합  (0) 2021.12.25