古堡算式
2014-02-01 20:32
239 查看
福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:
ABCDE * ? = EDCBA
他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”
华生:“我猜也是!”
于是,两人沉默了好久,还是没有算出合适的结果来。
请你利用计算机的优势,找到破解的答案。
把 ABCDE 所代表的数字写出来。
答案写在“解答.txt”中,不要写在这里
思路:1穷举,数都不一样,全排列的思想
思路2:从10000 ~ 99999找合适的
代码:
ABCDE * ? = EDCBA
他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”
华生:“我猜也是!”
于是,两人沉默了好久,还是没有算出合适的结果来。
请你利用计算机的优势,找到破解的答案。
把 ABCDE 所代表的数字写出来。
答案写在“解答.txt”中,不要写在这里
思路:1穷举,数都不一样,全排列的思想
思路2:从10000 ~ 99999找合适的
代码:
#include<stdio.h> //int mark[10]; int num[10]; int judge(int a){ int i, b = 0; for(i = 0; i <= 4; i++){//将逆置的每一位相加 b = b * 10 + num[i]; } if(b % a == 0) return 1; return 0; } int main() { //freopen("2.txt", "w", stdout); int a, i, j, k, flag; for(i = 10000; i <= 99999; i++){ a = i; flag = 0; for(j = 0; j < 5; j++){ num[j] = a % 10;//取个位 a = a / 10;//去掉个位,去前面的 for(k = 0; k < j; k++){ if(num[k] == num[j]){//数字都是不能重复的 flag = 1; break; } }//for if(flag == 1){//跳出二重循环 break; } }//for if(flag == 1) continue; else{//说明每一位都是不重复的 if(judge(i)) printf("%d\n",i); } }//for return 0; }
相关文章推荐
- 2012蓝桥杯【初赛试题】古堡算式
- 蓝桥杯 第三届C/C++预赛真题(2) 古堡算式(数学题)
- 2012蓝桥杯C++本科 古堡算式
- 2012年蓝桥杯之古堡算式
- 蓝桥杯历届-古堡算式
- Java 古堡算式
- 蓝桥杯古堡算式
- 古堡算式
- 2012蓝桥杯【初赛试题】古堡算式
- 2012蓝桥杯C++本科 古堡算式
- 古堡算式 福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式: ABCDE * ? = EDCBA
- 2012蓝桥杯省赛(C/C++)A组--古堡算式
- 2012蓝桥杯省赛第二题 古堡算式(暴力解决)
- 2012年第三届蓝桥杯C/C++程序设计本科B组省赛 古堡算式(结果填空)
- 古堡算式
- 蓝桥杯-古堡算式【枚举】
- 古堡算式--爆破(蓝桥杯)
- 蓝桥杯 古堡算式
- 古堡算式 结果填空
- 3.古堡算式