提问人:teach me 提问时间:11/15/2023 更新时间:11/15/2023 访问量:48
这是在 C++ 中提供大量输入时给予 TLE(超出时间限制)[关闭]
This is Giving TLE (time limit exceeded) on giving large input in C++ [closed]
问:
void helper(vector<string> &f, string &a, int n, string &temp, int i){
if(i==n){
if(find(f.begin(), f.end(), temp)==f.end()){
f.push_back(temp);
}
return;
}
helper(f, a, n, temp, i+1);
temp.push_back(a[i]);
helper(f, a, n, temp, i+1);
temp.pop_back();
return;
}
string moreSubsequence(int n, int m, string a, string b)
{
// Write your code here
vector<string>f;
string temp="";
helper(f, a, n, temp, 0);
temp="";
int a_size= f.size();
f.clear();
helper(f, b, m, temp, 0);
int b_size=f.size();
f.clear();
if(a_size>=b_size){
return a;
}
else return b;
}
我在编码忍者平台上获得了 27/50 的案例。我通过了所有 20 个案例,但在提交 TLE 后,在 27/50 案例之后感到高兴。我想要使用递归进行这种优化,没有其他方式。帮助我仅使用递归优化此代码。
答: 暂无答案
下一个:使用递归输出数组
评论