2
public List<String> subdomainVisits(String[] cpdomains) {3
List<String> result = new LinkedList<>();4
HashMap<String, Integer> hmap = new HashMap<>();6
for (int i = 0; i < cpdomains.length; i++) {7
String[] stringData = cpdomains[i].split(" ");8
String[] str = stringData[1].split("\\.");9
String subDomains = "";11
for (int j = str.length - 1; j >= 0; j--) {12
subDomains = str[j] + subDomains;14
if (!hmap.containsKey(subDomains)) hmap.put(subDomains, Integer.parseInt(stringData[0]));15
else hmap.put(subDomains, hmap.get(subDomains) + Integer.parseInt(stringData[0]));16
subDomains = "." + subDomains;20
for (Map.Entry<String, Integer> entry : hmap.entrySet()) {21
result.add(entry.getValue() + " " + entry.getKey());