TheBulgarianWolf

Legendary Farming

Mar 3rd, 2021
495
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace LegendaryFarming
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             Console.WriteLine("Start entering the quantity followed by the material separated with space: ");
  12.             SortedDictionary<string, int> keyMaterials= new SortedDictionary<string, int>()
  13.             {
  14.                 {"shards",0 },
  15.                 {"fragments",0 },
  16.                 {"motes",0 }
  17.             };
  18.  
  19.             SortedDictionary<string, int> junk = new SortedDictionary<string, int>();
  20.             bool itemObtained = false;
  21.             while(itemObtained != true)
  22.             {
  23.                 string[] inputLine = Console.ReadLine().Split(" ");
  24.                 for(int i = 0; i < inputLine.Length; i++)
  25.                 {
  26.                     if(i % 2 == 1)
  27.                     {
  28.                         if(inputLine[i] == "shards")
  29.                         {
  30.                             keyMaterials["shards"] += int.Parse(inputLine[i - 1]);
  31.                         }
  32.                         else if(inputLine[i] == "fragments")
  33.                         {
  34.                             keyMaterials["fragments"] += int.Parse(inputLine[i - 1]);
  35.                         }
  36.                         else if (inputLine[i] == "motes")
  37.                         {
  38.                             keyMaterials["motes"] += int.Parse(inputLine[i - 1]);
  39.                         }
  40.                         else
  41.                         {
  42.                             if (junk.ContainsKey(inputLine[i])){
  43.                                 junk[inputLine[i]] += int.Parse(inputLine[i - 1]);
  44.                             }
  45.                             else
  46.                             {
  47.                                 junk.Add(inputLine[i], int.Parse(inputLine[i - 1]));
  48.                             }
  49.                         }
  50.                     }
  51.                    
  52.  
  53.                     if(keyMaterials["shards"] >= 250)
  54.                     {
  55.                         Console.WriteLine("Shadowmourne obtained!");
  56.                         keyMaterials["shards"] -= 250;
  57.                         itemObtained = true;
  58.                     }
  59.                     else if (keyMaterials["fragments"] >= 250)
  60.                     {
  61.                         Console.WriteLine("Valanyr obtained!");
  62.                         keyMaterials["fragments"] -= 250;
  63.                         itemObtained = true;
  64.                     }
  65.                     else if (keyMaterials["motes"] >= 250)
  66.                     {
  67.                         Console.WriteLine("Dragonwrath obtained!");
  68.                         keyMaterials["motes"] -= 250;
  69.                         itemObtained = true;
  70.                     }
  71.                 }
  72.             }
  73.  
  74.             var orderedByAmount = keyMaterials.OrderByDescending(n => n.Value);
  75.             foreach(var item in orderedByAmount.OrderBy(o => o.Key))
  76.             {
  77.                 Console.WriteLine(item.Key + ": " + item.Value);
  78.             }
  79.             foreach(var junky in junk.OrderBy(k => k.Key))
  80.             {
  81.                 Console.WriteLine(junky.Key + ": " + junky.Value);
  82.             }
  83.         }
  84.     }
  85. }
  86.  
RAW Paste Data