관리 메뉴

솜씨좋은장씨

[BaekJoon] 1850번 : 최대공약수 (Python) 본문

Programming/코딩 1일 1문제

[BaekJoon] 1850번 : 최대공약수 (Python)

솜씨좋은장씨 2022. 7. 2. 15:28
728x90
반응형

코딩 1일 1문제! 오늘의 문제는 백준의 최대공약수 입니다.

 

1850번: 최대공약수

모든 자리가 1로만 이루어져있는 두 자연수 A와 B가 주어진다. 이때, A와 B의 최대 공약수를 구하는 프로그램을 작성하시오. 예를 들어, A가 111이고, B가 1111인 경우에 A와 B의 최대공약수는 1이고, A

www.acmicpc.net

👨🏻‍💻 문제 풀이

1로만 이루어진 수라고 하길래 이진수로 바꿔 푸는 문제인가? 싶어 그렇게 풀었었는데

알고보니 그냥 최대공약수를 구하고 이 값만큼 1을 쓰면 되는 문제였습니다.

👨🏻‍💻 코드 ( Solution )

def gcd(a, b):
    mod = a%b
    while mod > 0:
        a = b
        b = mod
        mod = a%b
    return b

def greatest_common_factor(A, B):
    gcd_num = gcd(A, B)
    
    return "1" * gcd_num
    

if __name__ == "__main__":
    A, B = map(int, input().split())
    
    print(greatest_common_factor(A, B))
 

GitHub - SOMJANG/CODINGTEST_PRACTICE: 1일 1문제 since 2020.02.07

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

Comments