QOJ.ac

QOJ

実行時間制限: 0.5 s メモリ制限: 1024 MB 満点: 100

#10525. 错误计算

統計

Bob 是一名小学生,数学不太好。他找到了父亲的计算器,并试图用它来作弊完成家庭作业。他的作业是计算包含乘法和加法的给定表达式。当然,乘法应该优先于加法进行,但计算器会忽略运算符优先级,从左到右计算表达式。因此,他的答案可能是以下两种计算规则之一的结果:

  • 先乘后加(即正常的运算符优先级)
  • 忽略运算符优先级,从左到右进行计算

请编写一个程序,根据给定的表达式和 Bob 的答案,判断他应用了哪种规则。

表达式由整数和运算符组成。所有的整数都只有一位,从 0 到 9。有两种运算符:+*,分别代表加法和乘法。

以下是一个示例表达式:

$1+2*3+4$

按照先乘后加的规则计算该表达式,结果为 11,如样例输入 1 所示。然而,按照从左到右的规则,结果为 13,如样例输入 2 所示。

有时两种规则会导致相同的结果,此时你无法分辨他应用了哪种规则。此外,Bob 有时会算错。当两种规则都无法得出 Bob 的答案时,很明显他确实算错了。

输入格式

输入包含一组测试用例,由两行组成。第一行包含要计算的表达式。表达式的字符数总是奇数,且小于或等于 17。表达式中奇数位置的字符是 '0' 到 '9' 的数字。偶数位置的字符是运算符 '+' 或 '*'。第二行包含一个整数,范围在 0 到 999999999(含)之间。该整数表示 Bob 对第一行给出的表达式计算出的答案。

输出格式

输出以下四个字符之一:

M:当只有先乘后加的规则得出 Bob 的答案时。 L:当只有从左到右的规则得出 Bob 的答案时。 U:当两种规则都得出 Bob 的答案时。 I:当两种规则都无法得出 Bob 的答案时。

样例

样例输入 1

1+2*3+4
11

样例输出 1

M

样例输入 2

1+2*3+4
13

样例输出 2

L

样例输入 3

3
3

样例输出 3

U

样例输入 4

1+2*3+4
9

样例输出 4

I

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.