1. 程式人生 > >第六屆 藍橋杯 c/c++ B組 省賽 (3)——三羊獻瑞

第六屆 藍橋杯 c/c++ B組 省賽 (3)——三羊獻瑞

三羊獻瑞


觀察下面的加法算式:


      祥 瑞 生 輝
  +   三 羊 獻 瑞
-------------------
   三 羊 生 瑞 氣


(如果有對齊問題,可以參看【圖1.jpg】)


其中,相同的漢字代表相同的數字,不同的漢字代表不同的數字。


請你填寫“三羊獻瑞”所代表的4位數字(答案唯一),不要填寫任何多餘內容。

因為是加法,所以“三”代表的是1  “羊”代表的是0

剩下的進行暴力搜尋   答案是  1085

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
	int a,b,c,d,e,f,i,j;//a-f,分別代表 祥,瑞,生,輝 獻,氣 
	for(a=2;a<10;a++)
	{
		for(b=2;b<10;b++)
		{
			for(c=2;c<10;c++)
			{
				for(d=2;d<10;d++)
				{
					for(e=2;e<10;e++)
					{
						for(f=2;f<10;f++)
						{
							if(a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&b!=c&&b!=d&&b!=e&&b!=f&&
							c!=d&&c!=e&&c!=f&&d!=e&&d!=f&&e!=f)
							{
								if(a*1000+b*100+c*10+d+b+e*10+1000==10000+c*100+b*10+f)
								{
									
									cout<<a<<b<<c<<d<<endl;
									cout<<"10"<<e<<b<<endl;
									cout<<"10"<<c<<b<<f<<endl<<endl;
								}
							}
						}
					}
				}
			}
		}
	} 
	return 0;
}