原题:P1149 [NOIP2008 提高组] 火柴棒等式 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
#include <bits/stdc++.h>
using namespace std;
int nums[10] = { 6,2,5,5,4,5,6,3,7,6 };
int f(int num)
{
int t = num, k = 0;
while (t != 0)
{
k += nums[t % 10];
t /= 10;
}
if (num == 0) k += nums[0];
return k;
}
int main()
{
int cnt = 0, n;
cin >> n;
for (int i = 0; i <= 1500; i++)
for (int j = 0; j <= 1500; j++)
if (f(i) + f(j) + f(i + j) == n - 4) cnt++;
cout << cnt << '\n';
return 0;
}
本文介绍了如何使用C++解决一道关于火柴棒等式的计数问题,涉及整数表示和算法,展示了在计算机科学教育中的实际应用。
1021

被折叠的 条评论
为什么被折叠?



