问题7183--4的表达式

7183: 4的表达式

[命题人 : ]
时间限制 : 1.000 sec  内存限制 : 256 MiB

题目描述

【题目描述】

编写一个程序,在给定整数n,该程序将生成一个求解为n的数学表达式,该解决方案被限制为使用恰好四个4和恰好三个从集合{*+-/}中选择的二进制运算。数字4是您唯一可以使用的数字。不允许将四个数字连接以生成其他数字,例如44444

例如,给定n0,则解为4*4-4*40。给定n=7,解决方案为4+4-4/4=7。除法被认为是截断整数除法,使1/40(而不是0.25)。假设运算的通常优先级为4+4*4=20,而不是32。并不是所有的整数输入都有使用具有上述限制的四个4的解(考虑n11)。

【输入】

输入一个整数m (1m1000),表示接下来的测试用例数。接下来的m行中的每一行都正好包含一个范围为-1000n1000n的整数值。

【输出】

对于每个测试用例,打印一行输出,其中包含使用四个4来达到目标数的方程或短语“no solution”。按照样例输出的格式输出公式;使用空格分隔打印的数字和符号。如果有多个这样的方程计算为目标整数,请打印其中任何一个。

【样本输入1

5

9

0

7

11

24

【样本输出1

4 + 4 + 4 / 4 = 9
4 + 4 - 4 - 4 = 0
4 + 4 - 4 / 4 = 7
no solution
4 + 4 + 4 * 4 = 24


样例输入 复制

5
9
0
7
11
24

样例输出 复制

4 + 4 + 4 / 4 = 9
4 + 4 - 4 - 4 = 0
4 + 4 - 4 / 4 = 7
no solution
4 + 4 + 4 * 4 = 24

来源/分类