全紫求调

P1255 数楼梯

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;
}

50tps(#1,#2,#3,#5,#6)

好好学算法吧!


|