蓝桥杯 三羊献瑞

观察下面的加法算式:
      祥 瑞 生 辉
  +   三 羊 献 瑞
-------------------
   三 羊 生 瑞 气
其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。
请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。

#include<stdio.h>
#include<algorithm>
using namespace std;
int num[]={0,1,2,3,4,5,6,7,8,9};
int main()
{
    do{
        if(num[0]==0||num[4]==0) continue; 
        int a=num[0]*1000+num[1]*100+num[2]*10+num[3];
        int b=num[4]*1000+num[5]*100+num[6]*10+num[1];
        int c=num[4]*10000+num[5]*1000+num[2]*100+num[1]*10+num[7];
        if(a+b==c){
            printf("%d+%d=%d\n",a,b,c);
            break;
        }
        }while(next_permutation(num,num+10));//全排列函数的应用
}

 

posted @ 2021-04-09 20:41  弈星  阅读(56)  评论(0)    收藏  举报