有如下的加法算式。其中每个汉字代表一个数字。
(如果存在对齐问题,可参见【图1.png】)
年
大年
过大年
能过大年
怎能过大年
我怎能过大年
+ 让我怎能过大年
------------------
能能能能能能能
请填写“让我怎能过大年” 所代表的整数。
所有数字连在一起,中间不要空格。例如:"3125697"。当然,这个不是正确的答案。
注意:只填写一个整数,不要填写任何多余的内容。
1234567
答案 1572836
- #include <iostream>
- #include <cmath>
- #include <string>
- #include <windows.h>
- #include <stack>
- #include <vector>
- #include <iomanip>
- #include <stack>
- #include <set>
- #include <map>
- #include <cstdio>
- using namespace std;
- int main()
- {
- for(int i=1234567;i<=9876543;i++)
- {
- map<int,int> m;
- int map[10]={0};
- int k=0;
- int t=i;
- while(t)
- {
- int mod=t%10;
- if(map[mod]==1)
- {
- k=0;
- break;
- }
- else
- {
- k++;
- m[k]=mod;
- map[mod]=1;
- }
- t/=10;
- }
- if(k==7)
- {
- if(7*m[1]+60*m[2]+500*m[3]+4000*m[4]+30000*m[5]+200000*m[6]+1000000*m[7]==1111111*m[4])
- {
- cout<<i<<endl;
- }
- }
- }
- return 0;
- }