POJ 2309 BST

不是我不说,而是怕你烦恼,你知道么。

结果是,因为不说,反而更烦恼。

我是想呀,感情这东西,要慢慢培养,就像酿酒一样,越酿越香。

现在好像。。你我之间有一道无形的裂痕,仅仅一道,却仿佛隔了天涯。

希望晚上能解决,

至少,你我安好。


---------------------------------------------没心情刷题的分割线---------------------------------------------

http://poj.org/problem?id=2309

题目大意,给定一颗满的二叉搜索树,然后给定一个n,求n的左右子树中最小和最大的树。

和二叉索引树(fenwick树)即树状数组差不多。直接用Lowbit解决吧

#include<cstdio>

inline int lowbit(int x)
{
	return x&-x;
}

int main()
{
	int T;
	scanf("%d",&T);
	while(T--)
	{
		int n;
		scanf("%d",&n);
		int ans_min=n,ans_max=n;
		ans_min=n-lowbit(ans_min);
		ans_max=n+lowbit(ans_max);	
		printf("%d %d\n",ans_min+1,ans_max-1);
	}
}


posted @ 2013-11-19 16:43  hr_whisper  阅读(132)  评论(0编辑  收藏  举报