1 条题解
-
0
这题方法其实很简单,不用搜索,把1-1000表示出来就行。
#include <bits/stdc++.h> using namespace std; int main() { int a[2001]={6},b,c[10]={6,2,5,5,4,5,6,3,7,6},s=0,i,j; scanf("%d",&b); for(i=1;i<=2000;i++) { j=i; while(j>=1)//求每个数所用的火柴棒 { a[i]=a[i]+c[j%10]; j=j/10; } } for(i=0;i<=1000;i++) { for(j=0;j<=1000;j++) if(a[i]+a[j]+a[i+j]+4==b)s++;//还有加号与等号 } printf("%d",s); return 0; }
信息
- ID
- 524
- 时间
- 1000ms
- 内存
- 50MiB
- 难度
- 10
- 标签
- 递交数
- 9
- 已通过
- 3
- 上传者