P1149 火柴棒等式
题目描述
给你n根火柴棍,你可以拼出多少个形如“ A+B=C”的等式?等式中的 A 、 B 、 C 是用火柴棍拼出的整数(若该数非零,则最高位不能是 00 )。
用火柴棍拼数字 0-9 的拼法如图所示:
注意:
-
加号与等号各自需要两根火柴棍
-
如果 A≠B ,则 A+B=C 与 B+A=C 视为不同的等式( A,B,C>=0 )
-
n 根火柴棍必须全部用上
输入输出格式
输入格式:
一个整数 n(n<=24) 。
输出格式:
一个整数,能拼成的不同等式的数目。
输入输出样例
说明
【输入输出样例1解释】
2 个等式为 0+1=1 和 1+0=1 。
【输入输出样例2解释】
9 个等式为:
0+4=4
0+11=11
1+10=11
2+2=4
2+7=9
4+0=4
7+2=9
10+1=11
11+0=11
1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<algorithm> 5 #include<cstring> 6 using namespace std; 7 8 int a[2002],b[2002]={6,2,5,5,4,5,6,3,7,6}; 9 int n,ans; 10 11 int main() 12 { 13 scanf("%d",&n); 14 for(int i=1;i<=2000;++i) 15 { 16 int j=i; 17 while(j) 18 { 19 a[i]+=b[j%10]; 20 j/=10; 21 } 22 } 23 a[0]=6; 24 for(int i=0;i<=1000;++i) 25 for(int j=0;j<=1000;++j) 26 if(a[i]+a[j]+a[i+j]==n-4) 27 ans++; 28 printf("%d",ans); 29 return 0; 30 }
如果你不开心,那我就把右边这个帅傻子分享给你吧,
你看,他这么好看,跟个zz一样看着你,你还伤心吗?
真的!这照片盯上他五秒钟就想笑了。
一切都会过去的。
时间时间会给你答案2333