문제 풀이/Baekjoon Online Judge
[python3] 1193번 분수찾기
[잉간]
2019. 4. 7. 22:30
분자 혹은 분모의 최댓값을 알기 위해 반복문을 사용해 N의 값을 1씩 증가시키며 X가 0 이하가 될 때까지 뺀다.
이때 X는 0 이하의 숫자가 되기에 1을 더해 양수로 변환한다.
분자가 1 증가하면 분모가 1 감소하거나 그 반대의 형식이기에 분자나 분모를 구하기 위해 N에서 X를 더해 감소한 값을 구한다.
그리고 지그재그 순서임을 고려하여 N이 짝수일 때는 분모가 1씩 감소하고 홀수일 때는 반대의 형식으로 출력한다.
문제풀이
X,N = int(input()),0 while X > 0: N += 1 X -= N if N % 2 == 0: print("{0}/{1}".format(N+X,1-X)) else: print("{0}/{1}".format(1-X,N+X))