import java.util.*;
import java.util.*;
class Solution {
public int[] solution(String[] id_list, String[] report, int k) {
int[] answer = new int[id_list.length];
HashMap<String, ArrayList<String>> userTo = new HashMap();
HashMap<String, Integer> userFrom = new HashMap();
for (String id: id_list) {
userTo.put(id, new ArrayList<>());
userFrom.put(id, 0);
}
for (String repo: report) {
String[] fromTo = repo.split(" ");
if (userTo.get(fromTo[0]).contains(fromTo[1])) continue;
userTo.get(fromTo[0]).add(fromTo[1]);
userFrom.put(fromTo[1], userFrom.get(fromTo[1]) + 1);
}
for (String repo: report) {
String[] fromTo = repo.split(" ");
if (userFrom.get(fromTo[1]) < k) {
userTo.get(fromTo[0]).remove(fromTo[1]);
}
}
int idx = 0;
for (String id: id_list) {
answer[idx++] = userTo.get(id).size();
}
return answer;
}
}
🤔