凑算式 2016蓝桥杯C++题解
资源约定: 峰值内存消耗(含虚拟机) < 256M CPU消耗 < 1000ms描述
凑算式
【如下图】
这个算式中A - I代表1~9的数字,不同的字母代表不同的数字。
比如:
6+8/3+952/714 就是一种解法,
5+3/1+972/486 是另一种解法。
这个算式一共有多少种解法?
注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。
注意
请严格按要求输出,不要画蛇添足地打印类似:“请您输入…” 的多余内容。
main函数需要返回0;
只使用ANSI C/ANSI C++ 标准;
不要调用依赖于编译环境或操作系统的特殊函数。
所有依赖的函数必须明确地在源文件中 #include
不能通过工程设置而省略常用头文件。
提交程序时,注意选择所期望的语言类型和编译器类型。
答案
29
代码
#include <iostream>
#include <algorithm>
using namespace std;
double a[9] = { 1,2,3,4,5,6,7,8,9 };
int main() {
int ans = 0;
do {
if (a[0] + a[1] / a[2] + (a[3] * 100 + a[4] * 10 + a[5]) / (a[6] * 100 + a[7] * 10 + a[8]) == 10.0) {
ans++;
}
} while (next_permutation(a, a + 9));
cout << ans << '\n';
}
本人也是新手,也是在学习中,勿喷
转载请注明出处
欢迎有问题的小伙伴一起交流哦~