摘要: 对这棵树DFS遍历一遍,同一节点入栈和出栈之间访问的节点就是这个节点的子树。因此节点入栈时求一次 小于 i 的节点个数 和,出栈时求一次小于 i 的节点个数和,两次之差就是答案。PS.这题直接DFS会爆栈,可以重新设置栈的大小#pragma comment(linker,"/STACK:100000000,100000000")也可以人工模拟栈,代码如下。#include #include #include #include using namespace std;const int MAXN = 110000;struct Edge{ int v; int next;}; 阅读全文
posted @ 2013-08-21 10:26 冰鸮 阅读(268) 评论(0) 推荐(0)