Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 38b3f62

Browse files
committed
Time: 147 ms (47.47%), Space: 200.7 MB (15.82%) - LeetHub
1 parent 3d07e7f commit 38b3f62

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
class Solution {
2+
public:
3+
long long dfs(int &ans, vector<int>&values, int node, int prevNode, unordered_map<int,list<int>>&adj, int &k){
4+
5+
long long sum=values[node];
6+
for(auto it:adj[node]){
7+
if(it==prevNode) continue;
8+
sum += dfs(ans,values,it,node,adj,k);
9+
}
10+
if(sum%k==0){
11+
ans++;
12+
return 0;
13+
}
14+
else return (long long)sum;
15+
}
16+
int maxKDivisibleComponents(int n, vector<vector<int>>& edges, vector<int>& values, int k) {
17+
unordered_map<int,list<int>>adj(n);
18+
for(int i=0;i<edges.size();i++){
19+
int u=edges[i][0];
20+
int v = edges[i][1];
21+
adj[u].push_back(v);
22+
adj[v].push_back(u);
23+
}
24+
int cnt=0;
25+
dfs(cnt,values,0,-1,adj,k);
26+
return cnt;
27+
}
28+
};

0 commit comments

Comments
 (0)