jiangsm @ 2024-10-25 21:08:56
#include <bits/stdc++.h>
using namespace std;
int n=0;
int stairs(int x,int m)
{
if(x==m)
{
n++;
return 0;
}
else if(x>m)
{
return 0;
}
stairs(x+1,m);
stairs(x+2,m);
}
int main()
{
int m;
cin>>m;
stairs(0,m);
cout<<n;
}
by jiangsm @ 2024-10-25 21:09:13
测试样例通过
by dhlsgjr @ 2024-10-25 21:13:23
先不谈别的,先谈一下格式 注意函数类型 int类型返回值是数 调用时要么赋值要么直接输出, 递归时调用自身时前头要加上return
by szlh_XJS @ 2024-10-25 21:13:41
@jiangsm 要return 0;
by dhlsgjr @ 2024-10-25 21:13:57
@jiangsm
by gaohongyuan @ 2024-10-25 21:28:12
@jiangsm 用递推+高精度不然改了也TLE
#include <bits/stdc++.h>
using namespace std;
long long n,m;
void stairs(int x)
{
if(x==m)
{
n++;
return;
}
else if(x>m)return;
stairs(x+1);
stairs(x+2);
}
int main()
{
cin>>m;
stairs(0);
cout<<n;
}