3
int dfs(int node, vector<int> &answer, vector<int> adjList[], vector<int> &quiet) {4
if (answer[node] == -1) {6
for (int child : adjList[node]) {7
int cand = dfs(child, answer, adjList, quiet);8
if (quiet[cand] < quiet[answer[node]]) answer[node] = cand;14
vector<int> loudAndRich(vector<vector<int>> &richer, vector<int> &quiet) {17
vector<int> adjList[n];19
for (auto x : richer) {22
adjList[u].push_back(v);25
vector<int> answer(n, -1);27
for (int node = 0; node < n; node++) {28
dfs(node, answer, adjList, quiet);