1.线段树:
for (int i = 0; i <= n * 4; i ++ )
tr[i].data = 0;
2.Trie树:
在每组测试数据最后:
for (int i = 0; i <= idx; i ++ ) memset(tr[i], 0, sizeof tr[i]);
idx = 0;
3.树
(1).dfs,最简单
idx = 0;
for (int i = 1; i <= n; i ++ ) h[i] = -1;
(2).topsort
idx = 0;
for (int i = 1; i <= n; i ++ ) d[i] = h[i] = -1;
(3).tarjan
scc_cnt = timestamp = idx = top = 0;
for (int i = 1; i <= n; i ++ ) h[i] = -1, dfn[i] = 0; //low[i]不需要