目录
题目
代码:
#include<bits/stdc++.h>
using namespace std;
int match[10] = { 6,2,5,5,4,5,6,3,7,6 };//0,1,2,3,4,5,6,7,8,9
int cal(int x)//10,11,12.......
{
int ans = 0;
if (x < 10) return match[x];
//三位数,辗转相除法,个,十,百
while (x!=0) {
ans += match[x%10];
x = x / 10;
}
return ans;
//直到x=0退出循环
}
//加号和等号各需两根
//con : match(A) + match(B) + match(C) + 4 = n ----->ans++
int main()
{
int n;
cin >> n;
int ans = 0;
for (int i = 0; i < 1000; i++)//A
{
if (cal(i) + 4 >= n) continue;
for (int j = 0; j < 1000; j++)//B
{
if (cal(i) + cal(j) + cal(i + j) + 4 == n) ans++;
}
}
cout << ans;
return 0;
}