Advertisement
Ligh7_of_H3av3n

11. Legendary Farming

May 21st, 2024
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.95 KB | None | 0 0
  1. package Uprajnenie;
  2.  
  3. import java.util.Map;
  4. import java.util.Scanner;
  5. import java.util.TreeMap;
  6.  
  7. public class LegendaryFarming {
  8.     public static void main(String[] args) {
  9.         Scanner scanner = new Scanner(System.in);
  10.  
  11.  
  12.         Map<String, Integer> materials = new TreeMap<>() {{
  13.             put("shards", 0);
  14.             put("fragments", 0);
  15.             put("motes", 0);
  16.         }};
  17.         Map<String, Integer> junk = new TreeMap<>();
  18.         boolean isValid = false;
  19.  
  20.         while (!isValid) {
  21.  
  22.             String[] input = scanner.nextLine().split("\\s+");
  23.  
  24.             for (int i = 0; i < input.length; i += 2) {
  25.  
  26.                 String key = input[i + 1].toLowerCase();
  27.                 int value = Integer.parseInt(input[i]);
  28.  
  29.                 if (key.equals("shards") || key.equals("fragments") || key.equals("motes")) {
  30.                     materials.put(key, materials.get(key) + value);
  31.  
  32.                     if (materials.get(key) >= 250) {
  33.                         materials.put(key, materials.get(key) - 250);
  34.  
  35.                         if (key.equals("shards")) {
  36.                             System.out.println("Shadowmourne obtained!");
  37.                         } else if (key.equals("fragments")) {
  38.                             System.out.println("Valanyr obtained!");
  39.                         } else {
  40.                             System.out.println("Dragonwrath obtained!");
  41.                         }
  42.                         isValid = true;
  43.                         break;
  44.                     }
  45.                 } else {
  46.                     junk.put(key, !junk.containsKey(key) ? value : junk.get(key) + value);
  47.                 }
  48.             }
  49.         }
  50.  
  51.         materials.entrySet().stream().sorted((a, b) -> b.getValue().compareTo(a.getValue()))
  52.                 .forEach(e -> System.out.printf("%s: %d%n", e.getKey(), e.getValue()));
  53.  
  54.         junk.forEach((key, value) -> System.out.printf("%s: %d%n", key, value));
  55.     }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement