본문 바로가기

algorithm/백준알고리즘

[백준알고리즘] 5086번: 배수와 약수 -Python

728x90

[백준알고리즘] 5086번: 배수와 약수 -Python

https://www.acmicpc.net/problem/5086

 

5086번: 배수와 약수

문제 4 × 3 = 12이다. 이 식을 통해 다음과 같은 사실을 알 수 있다. 3은 12의 약수이고, 12는 3의 배수이다. 4도 12의 약수이고, 12는 4의 배수이다. 두 수가 주어졌을 때, 다음 3가지 중 어떤 관계인지 구하는 프로그램을 작성하시오. 첫 번째 숫자가 두 번째 숫자의 약수이다. 첫 번째 숫자가 두 번째 숫자의 배수이다. 첫 번째 숫자가 두 번째 숫자의 약수와 배수 모두 아니다. 입력 입력은 여러 테스트 케이스로 이루어져 있다. 각 테스

www.acmicpc.net

 

단계별로 문제풀기 수학3의 첫 문제이다. 정수론과 조합론....이라고 한다..!

 

 

문제를 푸는건 간단하다. 각각의 수로 나누어서 나누어떨어지는가를 확인하면 된다.

 

a와 b를 입력받아 a가 b로 나누어 떨어진다면 a가 b의 배수, b가 a의 약수가 된다.

반대로 b가 a로 나누어 떨어진다면 b가 a의 배수, a가 b의 약수가 된다.

 

 

코드는 다음과 같다.

 

import sys

a, b = map(int, sys.stdin.readline().split())
while a != 0 or b != 0:
    if a % b == 0:
        print('multiple')
    elif b % a == 0:
        print('factor')
    else:
        print('neither')

    a, b = map(int, sys.stdin.readline().split())

 

 

잘못된 점이나 부족한 점 지적해주시면 감사하겠습니다

728x90