标题:猜灯谜
A 村的元宵节灯会上有一迷题:
请猜谜 * 请猜谜 = 请边赏灯边猜
小明想,一定是每个汉字代表一个数字,不同的汉字代表不同的数字。
请你用计算机按小明的思路算一下,然后提交“请猜谜”三个字所代表的整数即可。
请严格按照格式,通过浏览器提交答案。
注意:只提交一个3位的整数,不要写其它附加内容,比如:说明性的文字。
答案:897
思路:枚举或者全排列。
代码:
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include<queue>
#include<map>
#include<set>
using namespace std;
int main()
{
int num[10]={0,1,2,3,4,5,6,7,8,9};
do
{
if(num[0]==0)
continue;
int a=num[0]*100+num[1]*10+num[2];
int b=num[0]*100000+num[3]*10000+num[4]*1000+num[5]*100+num[3]*10+num[1];
if(a*a==b)
{
cout<<a<<endl;
break;
}
}while(next_permutation(num,num+10));
return 0;
}