【 2015年蓝桥杯省赛B组第3题--三羊献瑞】+ 快排

来源:互联网 发布:今晨送货单打印软件 编辑:程序博客网 时间:2024/04/30 01:28

三羊献瑞

观察下面的加法算式:

祥 瑞 生 辉  

+ 三 羊 献 瑞


 三 羊 生 瑞 气

(如果有对齐问题,可以参看【图1.jpg】)

其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。

请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。

快排 + 特判

答案不唯一 : 1083 1084 1085 1086

AC代码:

#include<cstdio>#include<algorithm>using namespace std;int main(){    int a[10] = {0,1,2,3,4,5,6,7,8,9};    do{        if(a[0] != 0 && a[4] != 0){            int ans = a[0] * 1000 + a[1] * 100 + a[2] * 10 + a[3];            int sum = a[4] * 1000 + a[5] * 100 + a[6] * 10 + a[1];            int cut = ans + sum;            if(cut >= 10000){            int b[6],nl = 0;            while(cut){                b[++nl] = cut % 10;                cut /= 10;            }            if(b[5] == a[4] && b[4] == a[5] && b[3] == a[2] && b[2] == a[1]){                printf("%d %d %d\n",ans,sum,ans + sum);                //break;            }        }        }    }while(next_permutation(a,a + 10));    return 0;}
0 0
原创粉丝点击