Algorithm Study/Python

[백준 파이썬] #1193 분수찾기

728x90
반응형

Bronze I

# 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 = '')

 

후기

  • Bronze I인데 내게 너무 어려운 문제로 느껴졌다. 문제 이해를 금방 했어도 구현을 너무 어려운 방식으로 시도하는 것 같아 고칠 필요가 있다.
  • 기준을 무엇으로 설정하는지가 중요해보인다. 분자 / 분모 / 분자 분모의 합 / 인덱스 등이 해당 문제를 푸는데 기준이 될 수 있을 것 같다. 위 문제는 인덱스를 기준으로 if문의 case를 구분하는 것이 좋다.
  • print문의 sep = '' 옵션을 통해서 출력값을 공백없이 나타낼 수 있다.