题目大意: 一种数列按照如下方式变化: 新数列第i位等于原数中数字i的出现次数. 变化过程中数列长度不变. 例如数列12的变化过程为12-11-20-01-10. 现在告诉你一个数列x,请求出x可能是有几种数列变化而来的. 思路: 将整个变化过程倒过来,除去自环就是一棵树. 题目就变成了求子树的大小. 显然枚举一个状态所有的前驱(即树上的子结点)会超时,只有25分. 然而如果只是求出一个状态对应的后继(父结点)会很简单. 我们可以枚举出所有的状态,然后求出其后继,最后拓扑排序时DP求出子树大小即…