您的位置:首页 > 编程语言 > C语言/C++

2012蓝桥杯C++本科 古堡算式

2014-10-17 00:00 316 查看
福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:

ABCDE * ? = EDCBA

他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”

华生:“我猜也是!”

于是,两人沉默了好久,还是没有算出合适的结果来。

请你利用计算机的优势,找到破解的答案。

把 ABCDE 所代表的数字写出来。

答案:21978

#include <iostream>
using namespace std;

int main()
{
long long  a, b, c, d, e;
long long s, i, j;
for(i = 10000; i <= 99999; i++)
for(j = 1; j <= 9; j++)
{
s = i * j;
if(s > 100000)
continue;
a = i / 10000;
b = (i - a * 10000)/1000;
c = (i - a * 10000 - b * 1000)/100;
d = (i - a * 10000 - b * 1000 - c * 100)/10;
e = i - a * 10000 - b * 1000 - c * 100 - d * 10;
if(e * 10000 + d * 1000 + c * 100 + b * 10 + a == s && a != b && a != c && a != d && a != e && b != c && b != d && b != e
&& c != d && c != e && d != e)
cout << a << b << c << d << e  << endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: