Advertisement
petarM89

07. Legendary Farming

Feb 28th, 2025
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.61 KB | None | 0 0
  1. import java.util.LinkedHashMap;
  2. import java.util.Scanner;
  3.  
  4. public class LegendaryFarming_07 {
  5.     public static void main(String[] args) {
  6.         Scanner scanner = new Scanner(System.in);
  7.  
  8.         LinkedHashMap<String, Integer> materials = new LinkedHashMap<>();
  9.         materials.put("shards", 0);
  10.         materials.put("fragments", 0);
  11.         materials.put("motes", 0);
  12.         String obtainedItem = "";
  13.         boolean isObtained = false;
  14.         while (!isObtained) {
  15.             //"3 Motes 5 stones 5 Shards"
  16.             //прочитайко входа, правя всичко на малки букви
  17.             String input = scanner.nextLine().toLowerCase();
  18.             String[] data = input.split("\\s+");
  19.  
  20.             for (int i = 0; i < data.length; i += 2) {
  21.                 //взимам количеството и името на материала
  22.                 int quantity = Integer.parseInt(data[i]);
  23.                 String material = data[i + 1];
  24.  
  25.                 //проверявам дали нямам такъв материал
  26.                 if (!materials.containsKey(material)) {
  27.                     materials.put(material, quantity);
  28.                 } else {
  29.                     int currentQuantity = materials.get(material);
  30.                     materials.put(material, currentQuantity + quantity);
  31.                 }
  32.  
  33.                 //взимам вече субраните материали и проверявам дали са станали 250 или повече
  34.                 int totalQuantity = materials.get(material);
  35.                 if (totalQuantity >= 250) {
  36.                     if (material.equals("shards")) {
  37.                         obtainedItem = "Shadowmourne";
  38.                         isObtained = true;
  39.                     } else if (material.equals("fragments")) {
  40.                         obtainedItem = "Valanyr";
  41.                         isObtained = true;
  42.                     } else if (material.equals("motes")) {
  43.                         obtainedItem = "Dragonwrath";
  44.                         isObtained = true;
  45.                     }
  46.                 }
  47.                 //трябва да похарча 250 материала за да купя -> Shadowmourne, Valanyr или  Dragonwrath
  48.                 if (isObtained) {
  49.                     materials.put(material, totalQuantity - 250);
  50.                     break;
  51.                 }
  52.  
  53.             }
  54.         }
  55.  
  56.         System.out.println(obtainedItem + " obtained!");
  57.         materials.entrySet().forEach(entry -> System.out.printf("%s: %d\n", entry.getKey(), entry.getValue()));
  58.     }
  59. }
  60.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement