题解 | #二叉树#

二叉树

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

#include <iostream>
using namespace std;
int n,m;
int f(int m){
    if(m>n) return 0;
    if(2*m>n && 2*m+1>n) return 1;
    return f(2*m)+f(2*m+1)+1;
}
int main() {
    //二叉树最后一个结点是n, 现输出以m为根的子树中含有的结点总数.
   while(cin>>m>>n){
       cout<<f(m)<<endl;
   }
   return 0;
}

全部评论

相关推荐

运营3年修炼中接简历辅导:你的科研项目经历里,只写了你的动作,没有写你的思考和成果,不要只写使用什么进行了什么,这等于罗列你的任务,简历是为了突出你的优秀,你在什么样的任务背景下,克服了什么样的困难,针对性地做了哪些事情,最后达成了什么成果(用数据体现你的成果和效率)
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务