Untitled
unknown
plain_text
a year ago
788 B
7
Indexable
class Solution {
public:
// vecctor<bool> visited(50002, false);
bool visited[50002];
int dfs(int node, vector<vector<pair<int,int>>> &adj){
visited[node] = true;
int reorderCount = 0;
for(auto [neigh, direction]: adj[node]){
if(!visited[neigh]){
reorderCount += direction;
reorderCount += dfs(neigh, adj);
}
}
return reorderCount;
}
int minReorder(int n, vector<vector<int>>& connections) {
vector<vector<pair<int,int>>> graph(n);
for(auto conn: connections){
graph[conn[0]].push_back({conn[1], 1}); // original direction
graph[conn[1]].push_back({conn[0], 0}); // reverse direction
}
return dfs(0, graph);
}
};Editor is loading...
Leave a Comment