1112. 循环小数

分数 \frac{1}{33} 的十进制扩展为 0.(03),其中 (03) 用于表示循环 03 无限期地重复。事实上,每个有理数(分数)的十进制扩展具有循环节,而无理数的十进制扩展没有这样的循环节。

有理数的十进制扩展及其循环节我们使用括号来包围循环节。

现在请你写一个程序,读取分数的分子和分母并确定它们的循环节。定义一个分数的循环节是数字的第一最小长度循环字符串。例如,分数 \frac{1}{250}的循环节为 0

输入

输入包含多个用例,每组用例一行,包含两个整数 n,m \ (0 \leq n \leq 3000,1 \leq m \leq 3000)n 表示分子,m 表示分母。

文件结束 EOF 表示输入结束。

输出

对于每组输入,打印其十进制扩展以及整个循环节的长度。

在写十进制扩展时,如果可能,将循环节括在括号中。如果整个循环节在小数点后前 50 个地方没有发生,则在循环节出现的位置(保证会出现在前 50 个字符)前放置一个左括号 (,并在小数点后第 50 个数字后放置 ...)

样例

标准输入 复制文本
76 25
5 43
1 397
标准输出 复制文本
76/25 = 3.04(0)
   1 = number of digits in repeating cycle

5/43 = 0.(116279069767441860465)
   21 = number of digits in repeating cycle

1/397 = 0.(00251889168765743073047858942065491183879093198992...)
   99 = number of digits in repeating cycle
登录以提交代码。
单点时限 1 秒
内存限制 128 MB
提交 183
通过 28