蓝桥杯 真题,C语言:马虎的算式

题目:马虎的算式

小明是个急性子,上小学的时 候经常把老师写在黑板上的题目抄错了。

有一次,老师出的题目是: 36 x 495 = ?
他却给抄成了: 396 x 45 = ?

但结果却很戏剧性,他的答案竟然是对的! !
因为36495=39645=17820

类似这样的巧合情况可能还有很多,比如: 27 * 594 = 297 * 54

假设a b c d e代表1~9不同的5个数字(注意是各不相同的数字, 且不含0)
能满足形如: ab * cde = adb * ce这样的算式一共有多少种呢?
请你利用计算机的优势寻找所有的可能,并回答不同算式的种类数。

答案:142

#include<stdio.h>

int main(){
	int a,b,c,d,e,ans;
	ans=0;
		//各不相同,需要判断 
	for (a=1; a<10 ;a++ ){
		for(b=1;b<10;b++){
			if(b!=a){
				for( c=1;c<10;c++ ){
					if(c!=a && c!=b ){
						for(d=1;d<10;d++){
							if(d!=a&&d!=b&&d!=c){
								for(e=1;e<10;e++){
									if(e!=a&&e!=b&&e!=c&&e!=d){
						//达成各不相同,凑式子
						//ab * cde = adb * ce
						if( (a*10+b)*(c*100+d*10+e)==(a*100+d*10+b)*(c*10+e)){
							ans++;	
						}	
									}	
								}
							}
						}
					}
				}	
			}
		}
	}
	printf("%d",ans);
	return 0;
}
发布了12 篇原创文章 · 获赞 2 · 访问量 389

猜你喜欢

转载自blog.csdn.net/Bad_Shepherd/article/details/104593140