본문 바로가기

알고리즘 문제풀이

백준 1193 분수 찾기 Python 수학 실버 5

 

1/1

1/2 2/1

3/1 2/2 1/3

1/4 2/3 3/2 4/1

이런식으로 진행됨을 알았음

홀수줄은 -1/+1

짝수 줄은 +1/-1 이 되기 때문에

몇번째 줄인지 구하고 , 차이만큼 더 가면 해결가능했다.

# 1193 분수 찾기 실버5
num = int(input())
line = 1
while num > line:
    num -= line
    line += 1
if line %2: # 라인이 홀수 라면
    a = line -num + 1
    b = num
else:
    a = num
    b = line -num + 1
print(f'{a}/{b}')