洛谷链接
题目类型:递归水题
事实证明:第四题的位置只是个障眼法
思路细讲:
(1)读入数据
注意用scanf,要不然10^6的大数据完全会爆。
(2)寻找递归入口
在寻找时要满足三个条件才能递归:
(1)有左儿子
(2)有右儿子
(3)两个儿子的值相同
这样能滤掉大部分无用的递归,加快了时间。
(3)第一遍递归判断以i为根的二叉树是否为对称二叉树
这个地方是本题的难点。
很多人的递归方式是这样(一开始我也是这样):
就是从一个父亲直接来看两个儿子是否OK(有(值相同)或没有两个儿子);
但这样做有个重大弊端,如下图你就嗝屁了: