火柴棍等式c语言

发布时间:2023年12月19日

分析:我们可以枚举等式,在判断这些等式是由多少根火柴组成,在把火柴数量和之前输入的比较,如果相等,那么就统计一次,注意的是等号和加号需要减去四根。

#include <stdio.h>
int f(int a){//判断某一个数字是由几根火柴组成的 
	int num[10]={6,2,5,5,4,5,6,3,7,6};
	int sum=0;
	if(a!=0){
	while(a){
		sum+=num[a%10];
		a/=10;
	}
	return sum;
	}
	else{
		return 6;
	}
}
int main(){
	int m,n,j,i,sum=0;
	scanf("%d",&n);
	for(i=0;i<1111;i++){//因为最大是由四个1组成,所以从1111开始枚举所以情况 
		for(j=0;j<1111;j++){
			m=i+j;
			if((f(i)+f(j)+f(m)+4)==n){//加上等号和加号消耗的四根火柴 
				sum++;
			}
		}
	}
	printf("%d",sum);
	return 0;
}

文章来源:https://blog.csdn.net/2301_80207329/article/details/135072183
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。