问题如上图所示,求每条路径的最大节点数目求max。
做法是拓扑排序+dp。每个节点用上一个节点存的各个节点的数量进行更新,这个是核心。
class Solution {
map<int, vector<int>> adj;
public:
int largestPathValue(string colors, vector<vector<int>>& edges) {
int n = colors.size();
if(n == 0)return 0;
int indegrees[n];
memset(indegrees, 0, sizeof(indegrees));
// 提取颜色
map<int, int