B. Tavas and SaDDas
用dfs搜索很快
#include<bits/stdc++.h>
using namespace std;
vector <long long> v;
void f(long long x)
{
if(x > 1e9) return;
v.push_back(x);
f(x*10+4);
f(x*10+7);
}
int main()
{
f(0);
sort(v.begin(), v.end());
int n;
cin >> n;
for(int i = 0 ; i < v.size(); ++i)
if(v[i] == n){
cout << i << endl;
}
return 0;
}
本文介绍了一种使用深度优先搜索(DFS)快速生成特定数列的C++实现。通过递归函数f(x),将数字10的倍数加4和7进行扩展,最后对生成的数列进行排序并查找目标值n。
919

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



