买一送一专题

CSU 2172 买一送一

题目:点击打开链接 题意:略。 题解:首先要看出来这是一棵树,然后就想怎么去重 设当前节点为u,商品类型为a[u],父节点为fa 在dfs的过程中维护这几个信息: 1、 上一个以a[u]为第二分量的二元对的数目pre[a[u]] 2、 从根到fa的不同商品类型的数目num,即以当前a[u]为第二分量的二元对的数目 3、 从根到fa的答案ans[fa] 那么当前的答案就是ans[u]