题解 | #二叉树#

二叉树

https://www.nowcoder.com/practice/f74c7506538b44399f2849eba2f050b5

#include <iostream>
using namespace std;
int res = 0;
void func(int nowIndex, int lastIndex){
    if(nowIndex<=lastIndex)res++;
    if(nowIndex*2<=lastIndex)func(nowIndex*2,lastIndex);
    if(nowIndex*2+1<=lastIndex)func(nowIndex*2+1,lastIndex);
}

int main() {
    int m,n;
    while(cin>>m>>n){//n是最后一个节点的编号
        if(m*n == 0)break;
        int num = 0;
        func(m,n);
        cout<<res<<endl;
        res=0;
    }
}
// 64 位输出请用 printf("%lld")

简单递归

全部评论

相关推荐

真是啥人都碰上了
牛客78696106...:力工思维造就炫压抑的安卓人
点赞 评论 收藏
分享
亲切的00后在笔试:我也遇到了,所以我早他一步查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务