第六届蓝桥杯校内选拔赛C/C++高职组解题(3)

来源:互联网 发布:淘宝怎么不能图片搜索 编辑:程序博客网 时间:2024/04/28 01:48


有如下的加法算式。其中每个汉字代表一个数字。
(如果存在对齐问题,可参见【图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;}











0 0
原创粉丝点击