https://www.acmicpc.net/problem/3036
3036번: 링
출력은 총 N-1줄을 해야 한다. 첫 번째 링을 제외한 각각의 링에 대해서, 첫 번째 링을 한 바퀴 돌리면 그 링은 몇 바퀴 도는지 기약 분수 형태 A/B로 출력한다.
www.acmicpc.net
원의 둘레는 2*pi*반지름 r로 결정되는데, 이로부터 결국 서로 다른 두 원의 둘레의 비는 반지름의 비율과 같음을 알 수 있다.
그 비율을 기약분수로 나타내면 되므로, 각 반지름을 두 수의 최대공약수로 나눠주면 기약분수를 구할 수 있다.
import math
n = int(input())
lst = list(map(int, input().split()))
r = lst[0]
for i in range(1, n):
print(str(r//math.gcd(r, lst[i]))+'/'+str(lst[i]//math.gcd(r, lst[i])))
'Algorithms' 카테고리의 다른 글
백준 11051. 이항 계수 2 (0) | 2022.06.11 |
---|---|
백준 11050. 이항 계수 1 (0) | 2022.06.10 |
백준 1934. 최소공배수 (0) | 2022.06.09 |
백준 2609. 최대공약수와 최소공배수 (0) | 2022.06.09 |
백준 1037. 약수 (0) | 2022.06.09 |
댓글