Link : judge.koreatech.ac.kr/problem.php?id=1008
Python
더보기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
from sys import stdin
testcase = int(stdin.readline().strip())
while testcase:
a, b = map(int, stdin.readline().strip().split())
front = a // b
calc = (a % b) * 10
first = calc // 10
memory = dict()
back = []
idx = 0
while calc != 0:
back.append(calc // b)
if (calc % b) == first:
back = [str(i) for i in back]
print(str(front) + '.' '(' + ''.join(back) + ')') # 순순환소수
break
elif (calc % b) in memory:
back = [str(i) for i in back]
print(str(front) + '.' + ''.join(back[0:memory[calc % b] + 1]) +
'(' + ''.join(back[memory[calc % b] + 1: idx + 1]) + ')') # 혼순환소수
break
memory[(calc % b)] = idx
calc = (calc % b) * 10
idx += 1
else:
back = [str(i) for i in back]
print(str(front) + '.' + ''.join(back) + '(0)')
testcase -= 1
|
cs |
FeedBack
cjw.git@gmail.com
'알고리즘 > 소스코드' 카테고리의 다른 글
PROGRAMMERS 42578: 위장 (0) | 2021.01.05 |
---|---|
PROGRAMMERS 42839: 소수 찾기 (0) | 2021.01.02 |
PROGRAMMERS 42883: 큰 수 만들기 (0) | 2020.12.18 |
PROGRAMMERS 42576: 완주하지 못한 선수 (0) | 2020.12.18 |
KOREATECH 1172: 킹콩 영준이와 종욱이의 대도시 파괴 프로젝트 (0) | 2020.12.16 |
댓글