본문 바로가기

알고리즘/백준

[python 파이썬] 백준 1193번: 분수찾기

반응형

https://www.acmicpc.net/problem/1193

 

1193번: 분수찾기

첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다.

www.acmicpc.net

 

 

X=int(input())

line=1
while X>line:
    X-=line
    line+=1
    
if line%2==0:
    a=X
    b=line-X+1
else:
    a=line-X+1
    b=X
    
print(a, '/', b, sep='')

 

대각선으로 각 줄을 나눠서 보면 [1/1], [1/2, 2/1], [3/1, 2/2, 1/3], [1/4, 2/3, 3/2, 4/1] 이렇게 나타낼 수 있다. 

따라서, 입력받은 X를 1씩 늘려 가며 빼서 몇 번째 줄에 몇 번째 숫자인지 구하고 짝수번 째 줄인지 홀수번째 줄인지에 따라 분자, 분모의 숫자의 방향이 홀수 줄인 경우 분자는 내림차순, 분모는 오름차순이고, 짝수 줄인 경우 그 반대이다.

반응형