题目链接: 题意:有n个点,n-1条单向边,每个点都销售一类商品 问从点1开始走,买第一样商品类型为x,买第二样商品类型为y,问不同有序对<x,y>的数量 解法: col[i]表示这个点的商品类型 last[col[i]]表示从1到点i过程中,点i的商品类型上次出现的时候的点的父亲 vis[col[i]]表示从1到点i过程中,点i的商品类型经过次数 num[i]表示从1到点i过程中不同商品类型数量和 每次扫到新的点v时,(u为v的父亲) num[u] - num[last[col[v]]]就是…