/*
有是一道有关暴力枚举的题目,其实题目很简单,就是给你m根火柴,看你能摆出来多少
个逻辑上成立的加法等式,不难发现,去掉+和=就只剩下了m-4根火柴来组成数字了,
那么我们只需要依次枚举A,B,C就可以达到要求了,为了减少时间的复杂度,我们只要
枚举两个变量A,B就好C的枚举可以通过A+B得到,那么我们就很容易的发现,时间复杂度
由原来的O(n3)-> O(n2)了,好了好了,开始枚举吧,这里有个小小的技巧,就是自己
写一个fun()函数,这个函数的作用当然就是数火柴了,也就是说,把A,B,C所需要的
火柴个数一个一个的算出来了,这个其实也很简单,就是和我们先前C上机时用到的输入
一个数字,计算这个数字的位数的思想是一样的,只不过这里的1不再是1,而是通过一个
简单的映射得到了一个新的数字,1->2,0->6,3->5,4->4,,,,然后一一匹配就好。
*/
# include
# include
using namespace std;
int f[10] = {6,2,5,5,4,5,6,3,7,6};
int fun( int x )
{
int num = 0;
while ( x/10 > 0 )
{
num+=f[x%10];
x/=10;
}
num += f[x];
return num;
}
int main(void)
{
int a,b,c;
int m;cin>>m;
int sum = 0;
for ( int a = 0;a <= 1111;a++ )
{
for ( int b = 0;b <= 1111;b++ )
{
c = a+b;
if ( fun(a)+fun(b)+fun(c) == m-4 )
{
cout<