https://www.acmicpc.net/problem/5086
[문제]
4 × 3 = 12이다.
이 식을 통해 다음과 같은 사실을 알 수 있다.
3은 12의 약수이고, 12는 3의 배수이다.
4도 12의 약수이고, 12는 4의 배수이다.
두 수가 주어졌을 때, 다음 3가지 중 어떤 관계인지 구하는 프로그램을 작성하시오.
- 첫 번째 숫자가 두 번째 숫자의 약수이다.
- 첫 번째 숫자가 두 번째 숫자의 배수이다.
- 첫 번째 숫자가 두 번째 숫자의 약수와 배수 모두 아니다.
[입력]
입력은 여러 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 10,000이 넘지않는 두 자연수로 이루어져 있다. 마지막 줄에는 0이 2개 주어진다. 두 수가 같은 경우는 없다.
[출력]
각 테스트 케이스마다 첫 번째 숫자가 두 번째 숫자의 약수라면 factor를, 배수라면 multiple을, 둘 다 아니라면 neither를 출력한다.
def fac(x,y):
li = []
for i in range(1, y+1):
if y % i == 0:
li.append(i)
if x in li:
return True
else:
return False
while True:
li = []
a, b = map(int,input().split(" "))
if a==0 and b==0:
break
if fac(a,b):
print('factor')
elif a%b==0:
print('multiple')
else:
print('neither')
'[알고리즘] 백준 Python 배우기 (1~50)' 카테고리의 다른 글
[백준 9610] 사분면 (0) | 2020.04.04 |
---|---|
[백준 5717] 상근이의 친구들 (0) | 2020.04.04 |
[백준 10988] 팰린드롬인지 확인하기 (0) | 2020.04.04 |
[백준 10886] 0 = not cute / 1 = cute (0) | 2020.04.04 |
[백준 10102] 개표 (0) | 2020.04.01 |