xcc1
백준 1193번 본문
X = int(input())
i = 1
total = 0
while True:
N = total
total += i
if total >= X:
S = i + 1
break
else:
i += 1
if S % 2 != 0:
print(X-N, '/', S-X+N, sep='')
else:
print(S-X+N,'/', X-N, sep='')
규칙
1. 대각선 라인에 있는 분수들은 분모+분수 값이 같다
2. 한 대각선 라인 당 개수가 1씩 늘어난다. (1라인 1개, 2라인 2개, 3라인 3개)
3. 분모+분수 값이 짝수인 경우에는 가분수로 시작, 홀수인 경우는 분모가 더 크게 시작된다.
S = 분모 + 분수 = X번째가 포함되는 라인 + 1
total = n라인까지의 개수를 모두 더한 것. (1라인까지면 개, 2라인까지면 3개)
N = 바로 전 라인의 개수를 모두 더한 것.
X-N = X번째 - 바로 전 라인 개수 = 라인에서의 X의 순서 = 분모 또는 분자에 들어가는 수.
S-X+N = 분모+분자 - 분모or 분자 = 분자 또는 분모에 들어가는 수.
'백준' 카테고리의 다른 글
백준 2839번:설탕배달 (0) | 2021.10.30 |
---|---|
백준 10250:ACM 호텔 (0) | 2021.10.28 |
백준 문제별풀이 7단계(파이썬) (0) | 2021.09.04 |
백준 단계별 풀이 6단계 (파이썬) (0) | 2021.09.02 |
백준 단계별 풀이 5단계 (파이썬) (0) | 2021.08.31 |