What I Learned/Algorithm Practice
[백준 - python] 3036번: 링
Interrobang
2022. 12. 3. 22:54
문제 링크
3036번: 링
출력은 총 N-1줄을 해야 한다. 첫 번째 링을 제외한 각각의 링에 대해서, 첫 번째 링을 한 바퀴 돌리면 그 링은 몇 바퀴 도는지 기약 분수 형태 A/B로 출력한다.
www.acmicpc.net
문제 풀이
import math
n = int(input())
diameter = list(map(int, input().split()))
for i in range(1, n):
gcd = math.gcd(diameter[0], diameter[i])
print(f'{diameter[0]//gcd}/{diameter[i]//gcd}')
*key point: 첫번째 링과 각 링의 반지름의 최소공배수를 구하여 나누어주면 출력해야 할 기약 분수의 분모, 분자를 구할 수 있다.