第六届蓝桥杯省赛C++B组 三羊献瑞

三羊献瑞
观察下面的加法算式:
        祥 瑞 生 辉
  +   三 羊 献 瑞
-------------------
   三 羊 生 瑞 气
(如果有对齐问题,可以参看【图1.jpg】)
第六届蓝桥杯省赛C++B组 三羊献瑞_第1张图片
其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。

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

 

答案:1085

思路:因为是加法,所以进位最多只能是1,三就是1,那么祥只能是9或8,然后进行全排列。

代码:

#include
#include
#include
#include
#include
#include
#include  
#include
using namespace std;

int main()
{
	int a[9]={0,2,3,4,5,6,7,8,9};
	do
	{
		if(a[0]>=8)
		{
			int ABCD=a[0]*1000+a[1]*100+a[2]*10+a[3];
			int EFGB=1000+a[4]*100+a[5]*10+a[1];
			int EFCBH=10000+a[4]*1000+a[2]*100+a[1]*10+a[6];
			if(ABCD+EFGB==EFCBH)
			{
			 	cout<

 

你可能感兴趣的:(蓝桥杯,全排列,全排列)