题解:B4283 [蓝桥杯青少年组省赛 2022] 分成整数
FJ_EYoungOneC · · 题解
解题思路
由于
考虑暴力,枚举
考虑优化,由于
AC_Code
#include <iostream>
using namespace std;
int n;
bool check(int x)
{
while (x)
{
if (x % 10 == 3 || x % 10 == 7)
return false;
x /= 10;
}
return true;
}
int main()
{
cin >> n;
int res = 0;
for (int i = 1; i <= n; ++ i )
{
if (!check(i))
continue;
for (int j = i + 1; j <= n; ++ j )
{
int k = n - i - j;
if (k <= j)
break;
if (check(j) && check(k))
res ++;
}
}
cout << res << endl;
return 0;
}