QOJ.ac

QOJ

حد الوقت: 1.0 s حد الذاكرة: 1024 MB مجموع النقاط: 100

#7548. 转换为不可约形式

الإحصائيات

一个基本分数可以用三个整数 $(a\ b\ c)$ 表示,其含义为 $a + \frac{b}{c}$,其中 $1 \le a, b, c \le 9$。 一个扩展分数具有 $(a'\ b'\ c')$ 的形式,其中 $a', b', c'$ 可以是 $1$ 到 $9$ 之间的整数,也可以是其他的扩展分数。注意,基本分数也是一种扩展分数,且分数的长度是有限的。

给定一个扩展分数,我们希望将其值表示为一个既约分数。 例如,扩展分数 $((1\ 2\ 4)\ (5\ 2\ 3)\ (4\ 3\ (2\ 7\ 3)))$ 的既约分数计算如下:

$$\left(1 + \frac{2}{4}\right) + \frac{5 + \frac{2}{3}}{4 + \frac{3}{2 + \frac{7}{3}}} = \frac{991}{366}$$

给定一个扩展分数的字符串形式,编写一个程序,将该扩展分数转换为既约分数。

输入格式

输入的第一行包含一个整数 $n$ ($2 \le n \le 100$),表示给定扩展分数的字符数。第二行包含 $n$ 个以空格分隔的字符,这些字符由括号和 $1$ 到 $9$ 之间的数字组成:即扩展分数本身。

输出格式

输出仅一行。如果答案为 $x/y$,则该行应包含两个互质的整数 $x$ 和 $y$。否则(例如,当输入无效时),输出 $-1$。保证答案在 $64$ 位整数范围内。

样例

样例输入 1

5
( 1 2 3 )

样例输出 1

5 3

样例输入 2

8
( 1 2 ( 3 4 5 ) )

样例输出 2

-1

样例输入 3

21
( ( 1 2 4 ) ( 5 2 3 ) ( 4 3 ( 2 7 3 ) ) )

样例输出 3

991 366

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.