赞
踩
“计算 24 24 24”是一个流传已久的数字游戏,小蓝最近对此痴迷不已。
游戏规则是:对 4 4 4 个 1 ∼ 10 1 \sim 10 1∼10 之间的自然数,进行加、减、乘三种运算,要求运算结果等于 24 24 24 。
乘法的优先级高于加、减,并且算式中不可以用括号,不可以改变 4 4 4 个数字出现的顺序。
下面我们给出两个游戏的具体例子:
若给出的 4 4 4 个操作数是: 10 10 10、 2 2 2、 4 4 4、 8 8 8,则有两种可能的解答方案: 10 + 2 + 4 + 8 = 24 10+2+4+8=24 10+2+4+8=24, 10 × 2 − 4 + 8 = 24 10\times 2-4+8=24 10×2−4+8=24。
若给出的 4 4 4 个操作数是: 7 7 7、 2 2 2、 3 3 3、 6 6 6,则没有解答方案。
请你输出解答方案数。
输入格式
四个整数。
输出格式
输出方案总数。
输出时每行末尾的多余空格,不影响答案正确性
样例输入1
7 2 3 6
样例输出1
0
样例输入2
10 2 4 8
样例输出2
2
打表。因为不可以改变 4 4 4 个数字出现的顺序,那么 3 3 3个操作符的组合一共 27 27 27种,那么可以将 27 27 27种组合全部表示出来,计算结果是24的表达式的个数。
#include <iostream> using namespace std; int main() { //char op[] = "+-*"; // for(int i = 0; i < 3; i ++) // for(int j = 0; j < 3; j ++) // for(int k = 0; k < 3; k ++) // { // cout <<"x = a "<< op[i] << " b " << op[j] << " c " << op[k] << " d;" << endl; // cout << "if(x == 24) res ++;" << endl; // } int a, b, c, d; cin >> a >> b >> c >> d; int res = 0, x; x = a + b + c + d; if(x == 24) res ++; x = a + b + c - d; if(x == 24) res ++; x = a + b + c * d; if(x == 24) res ++; x = a + b - c + d; if(x == 24) res ++; x = a + b - c - d; if(x == 24) res ++; x = a + b - c * d; if(x == 24) res ++; x = a + b * c + d; if(x == 24) res ++; x = a + b * c - d; if(x == 24) res ++; x = a + b * c * d; if(x == 24) res ++; x = a - b + c + d; if(x == 24) res ++; x = a - b + c - d; if(x == 24) res ++; x = a - b + c * d; if(x == 24) res ++; x = a - b - c + d; if(x == 24) res ++; x = a - b - c - d; if(x == 24) res ++; x = a - b - c * d; if(x == 24) res ++; x = a - b * c + d; if(x == 24) res ++; x = a - b * c - d; if(x == 24) res ++; x = a - b * c * d; if(x == 24) res ++; x = a * b + c + d; if(x == 24) res ++; x = a * b + c - d; if(x == 24) res ++; x = a * b + c * d; if(x == 24) res ++; x = a * b - c + d; if(x == 24) res ++; x = a * b - c - d; if(x == 24) res ++; x = a * b - c * d; if(x == 24) res ++; x = a * b * c + d; if(x == 24) res ++; x = a * b * c - d; if(x == 24) res ++; x = a * b * c * d; if(x == 24) res ++; cout << res; return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。