Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Collections;
- import java.util.LinkedHashSet;
- import java.util.LinkedList;
- import java.util.Scanner;
- import java.util.TreeMap;
- import java.util.Map.Entry;
- public class UserLogs {
- public static void main(String[] args) {
- Scanner sc = new Scanner(System.in);
- TreeMap<String, LinkedList<String>> users = new TreeMap<>();
- while(true) {
- String input = sc.nextLine().trim();
- if(input.equals("end")) {
- break;
- }
- String[] strings = input.split("=");
- String user = strings[strings.length - 1];
- String[] ips = strings[1].split(" ");
- String ip = ips[0];
- if(!users.containsKey(user)) {
- users.put(user, new LinkedList<String>());
- }
- LinkedList<String> ipCounts = new LinkedList<>();
- ipCounts = users.get(user);
- ipCounts.add(ip);
- }
- for(Entry<String, LinkedList<String>> user : users.entrySet()) {
- String name = user.getKey();
- LinkedList<String> ipCounts = user.getValue();
- System.out.print(name + ":\n");
- LinkedHashSet<String> set = new LinkedHashSet<>();
- for(String ip : ipCounts) {
- int occurences = Collections.frequency(ipCounts, ip);
- set.add(ip + " => " + occurences);
- }
- String[] arr = set.toArray(new String[set.size()]);
- for(int i = 0; i < arr.length - 1; i++) {
- System.out.print(arr[i] + ", ");
- }
- System.out.print(arr[arr.length - 1] + ".\n");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement