Advertisement
Guest User

Orders

a guest
Aug 25th, 2014
338
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.37 KB | None | 0 0
  1. import java.util.ArrayList;
  2. import java.util.LinkedHashMap;
  3. import java.util.Map;
  4. import java.util.Scanner;
  5. import java.util.TreeMap;
  6.  
  7. public class Problem4Orders {
  8.  
  9.     public static void main(String[] args) {
  10.         Scanner input = new Scanner(System.in);
  11.         int n = Integer.valueOf(input.nextLine());
  12.         LinkedHashMap<String, TreeMap<String, Integer>> orders = new LinkedHashMap<String, TreeMap<String, Integer>>();
  13.        
  14.         for (int i = 0 ; i < n ; i++) {
  15.             String[] tokens = input.nextLine().split(" ");
  16.            
  17.             TreeMap<String, Integer> customer = orders.get(tokens[2]); 
  18.            
  19.             if (!orders.containsKey(tokens[2])) {
  20.                 customer = new TreeMap<String, Integer>();
  21.             }
  22.            
  23.             Integer value = customer.get(tokens[0]);
  24.        
  25.             if (!customer.containsKey(tokens[0])) {
  26.                 value = 0;
  27.             }
  28.             customer.put(tokens[0], value + Integer.valueOf(tokens[1]));
  29.            
  30.             orders.put(tokens[2], customer);
  31.         }
  32.        
  33.         for (Map.Entry<String, TreeMap<String, Integer>> entry : orders.entrySet()) {
  34.             System.out.print(entry.getKey() + ": ");
  35.             TreeMap<String, Integer> customer = entry.getValue();
  36.             ArrayList<String> customerCount = new ArrayList<String>();
  37.            
  38.             for (Map.Entry<String, Integer> ent : customer.entrySet()) {
  39.                
  40.                 customerCount.add(ent.getKey() + " " + ent.getValue());
  41.             }
  42.             System.out.println(String.join(", ", customerCount));
  43.         }
  44.        
  45.         input.close();
  46.     }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement