POJ_2309_BST(位运算)
来源:互联网 发布:删除列的sql 编辑:程序博客网 时间:2024/06/03 05:17
题型:数据结构
题意:对于二叉搜索树,给出一个节点,求出该节点的最左子孙和最右子孙的节点号。
分析:
运用树状数组里所使用的压位运算,可以轻松的算出节点所管辖的范围,即:
[n-(n&(-n)),n+(n&(-n))]
代码:
#include<iostream>#include<cstring>#include<cstdio>#include<cmath>using namespace std;int Lowbit(int t) { return t & -t;}int main(){int t,n;while(~scanf("%d",&t)){while(t--){scanf("%d",&n);int x = Lowbit(n) - 1;printf("%d %d\n",n-x,n+x);}}return 0;}
0 0
- POJ_2309_BST(位运算)
- POJ_2309_BST
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- 位运算
- grep 常规用法小结
- 没答上来的笔试题。。。
- 网络121第2周课后作业——安装JDK、注册CSDN博客、发表CSDN博文
- 【Amritapuri 2009】 Find the Number
- KMP字符串模式匹配详解
- POJ_2309_BST(位运算)
- 黑马程序员___迭代器
- [编程之美] 2.5 寻找最大的K个数
- Android之数据存储解决方案——SharedPreferences
- 系统日常操作
- iOS扩展机制category与associative理解
- 企业软件,WEB和对于他们无限美好的遐想(第一日)
- DIV+CSS布局概述及初步入门
- JAVA反射机制