반응형
https://www.acmicpc.net/problem/14490
문제
대열이는 욱제의 친구다.
- “야 백대열을 약분하면 뭔지 알아?”
- “??”
- “십대일이야~ 하하!”
n:m이 주어진다. 욱제를 도와주자. (...)
입력
n과 m이 :을 사이에 두고 주어진다. (1 ≤ n, m ≤ 100,000,000)
출력
두 수를 최대한으로 약분하여 출력한다.
풀이
유클리드 호제법을 사용해서 풀이!
유클리드 호제법:
if a > b:
while b > 0:
a, b = b, a % b
python코드
# 14490 백대열
n, m = map(int,input().split(':'))
a, b = n, m
if n > m:
while m > 0:
n, m = m, n % m
print(a // n, end='')
print(':', end='')
print(b // n)
else:
while n > 0:
n, m = m % n, n
print(a//m,end='')
print(':',end='')
print(b//m)
똑같은 코드를 두번 반복;;;
반응형
'study > 백준' 카테고리의 다른 글
[백준] 2002. 추월 : python (0) | 2022.09.13 |
---|---|
[백준] 4358. 생태학 : python (0) | 2022.09.13 |
[백준] 1269. 대칭 차집합 : python (0) | 2022.09.02 |
[백준] 2776. 암기왕 : python (0) | 2022.09.01 |
[백준] 15651. N과 M (3) : python (0) | 2022.08.31 |