https://www.luogu.org/problem/P1149
第一眼看起來比較Trick
分析一下其實是道水題
解題思路:
首先設一個數組儲存每個數字所需要的火柴棒的數目。然後只要i、j、i+j再加上'+'和'='(共4) == N 即可。
AC代碼:
#include <iostream>
using namespace std;
int num[10] = {6,2,5,5,4,5,6,3,7,6};
int cpu(int nu) {
if(nu == 0) return 6;
else {
int ans = 0;
while (nu) {
ans += num[nu % 10];
nu /= 10;
}
return ans;
}
}
int main() {
int n;
int sum = 0;
cin >> n;
for(int i = 0; i <= 1000;i++)
for(int j = 0; j<= 1000; j++)
if(cpu(i) + cpu(j) + cpu(i + j) + 4 == n)
sum++;
cout << sum << endl;
}