백준 1193 (파이썬)

김덕현·2021년 7월 13일
1

BAEKJOON

목록 보기
53/62

1.문제

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

2.코드

x=int(input())
l=1
while (x>l):
    x-=l
    l+=1
if l%2==0:
    i=x
    j=l-x+1
else :
    i=l-x+1
    j=x
print('%d/%d'%(i,j))

3.코드해설

1/1 , 1/2 2/1 , 1/3 2/2 3/1 , ...
위와 같은 방식으로 line1, line2,.. 라고 볼 수 있다.
먼저 x번째의 분수가 몇 번째 line의 몇 번째 항목인지 알아야한다.
한 line당 분수 한개가 더 늘어난다는것을 고려하여 while문에 x가 l보다 같거나 작아질때까지 x를 1 줄이고 l을 1 늘리며 찾아준다.

profile
BAEKJOON STUDYING

0개의 댓글