这是我密码-
#include<bits/stdc++.h>
#define ll long long
using namespace std;
void printno(ll n){
if(n==1){
cout<<1<<endl;
return;
}
printno(n-1);
cout<<n<<"\t";
}
int main(){
ll n;
cin>>n;
printno(n);
return 0;
}
我正在使用vs代码.我的代码不工作的输入大于10^5.什么是这问题在我的代码?和我怎样才能得到输出的输入大于10^7.
1条答案
按热度按时间bbmckpt71#
你可能在你的平台上耗尽了堆栈空间,因为你试图同时在堆栈上进行超过100,000次递归调用。我们正在访问的网站是以你的程序所发生的事情命名的。我不确定你的最终目标是什么,但是试着想出一个不需要递归或者不需要递归这么多次的方法(例如,使用一个简单的
for
循环)。