编程题

算24

给出 4 个小于10个正整数, 你可以使用加减乘除 4 种运算以及括号把这 4 个数连接起来得到一个表达式。 现在的问题是, 是否存在一种方式使得得到的表达式的结果等于24。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定义一致(这里的除法定义是实数除法) 。比如,对于 5,5, 5, 1 , 我们知道 5 * (5 – 1 / 5) =24, 因此可以得到 24。 又比如, 对于 1 , 1 , 4, 2, 我们怎么都不能得到 24。

输入

输入数据包括多行, 每行给出一组测试数据, 包括 4 个小于 1 0 个正整数。 最后一组测试数据中包括 4个 0, 表示输入的结束, 这组数据不用处理。

输出

对于每一组测试数据, 输出一行, 如果可以得到 24, 输出“YES”; 否则, 输出“NO”。

样例输入

5 5 5 1

1 1 4 2

0 0 0 0

样例输出

YES

NO

查看答案
赣ICP备20007335号-2