代码拉取完成,页面将自动刷新
同步操作将从 柳婼/Aha-Algorithms-practise 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
3.1 穷举法
xxx + xxx = xxx
x填入1~9数字,使得等式成立,数字不得重复
直接判断abcdefghi互相不相等的方法太繁琐,可以用book数组标记
如果这个数字出现过了,那么就把这个数字对应的book值标记为1
那么根据1~9下标的数组是否都标记为1(sum的值是否等于9)来判断abcdefghi是否两两不相等
用数组a[i]表示1~9会更简便易读。
#include <iostream>
using namespace std;
int main() {
int a[10];
int sum;
int book[10];
int total = 0;
for (a[1] = 1; a[1] <= 9; a[1]++)
for (a[2] = 1; a[2] <= 9; a[2]++)
for (a[3] = 1; a[3] <= 9; a[3]++)
for (a[4] = 1; a[4] <= 9; a[4]++)
for (a[5] = 1; a[5] <= 9; a[5]++)
for (a[6] = 1; a[6] <= 9; a[6]++)
for (a[7] = 1; a[7] <= 9; a[7]++)
for (a[8] = 1; a[8] <= 9; a[8]++)
for (a[9] = 1; a[9] <= 9; a[9]++) {
for (int i = 1; i <= 9; i++) {
book[i] = 0;
}
for (int i = 1; i <= 9; i++) {
book[a[i]] = 1;
}
sum = 0;
for (int i = 1; i <= 9; i++) {
sum += book[i];
}
if (sum == 9 && (a[1] * 100 + a[2] * 10 + a[3]) + (a[4] * 100 + a[5] * 10 + a[6]) == (a[7] * 100 + a[8] * 10 + a[9]) ) {
total++;
cout << a[1] << a[2] << a[3] << "+" << a[4] << a[5] << a[6] << "=" << a[7] << a[8] << a[9] << endl;
}
}
cout << "total = " << total / 2 << endl;
return 0;
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。