Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Linq;
- using System.Collections.Generic;
- using System.Numerics;
- using System.Text;
- namespace _3._Legendary_Farming
- {
- class Program
- {
- static void Main(string[] args)
- {
- var item = new Dictionary<string, int>();
- var itemJunk = new Dictionary<string, int>();
- int num = 0;
- int counterForBreakFrag = 0;
- int counterForBreaksMotes = 0;
- int counterForBreaksShard = 0;
- while (true)
- {
- string[] material = Console.ReadLine().Split(" ").ToArray();
- for (int i = 0; i < material.Length; i++)
- {
- string inputMaterial = material[i].ToLower();
- if (inputMaterial == "fragments")
- {
- int materialQuantity = int.Parse(material[i - 1]);
- if (!item.ContainsKey("fragments"))
- {
- item.Add("fragments", materialQuantity);
- counterForBreakFrag += materialQuantity;
- if (item["fragments"] >= 250)
- {
- Console.WriteLine($"Valanyr obtained!");
- item["fragments"] -= 250;
- break;
- }
- }
- else
- {
- item["fragments"] += materialQuantity;
- counterForBreakFrag += materialQuantity;
- if (item["fragments"] >= 250)
- {
- Console.WriteLine($"Valanyr obtained!");
- item["fragments"] -= 250;
- break;
- }
- }
- }
- else if (inputMaterial == "shards")
- {
- int materialQuantity = int.Parse(material[i - 1]);
- if (!item.ContainsKey("shards"))
- {
- counterForBreaksShard += materialQuantity;
- item.Add("shards", materialQuantity);
- if (item["shards"] >= 250)
- {
- Console.WriteLine($"Shadowmourne obtained!");
- item["shards"] -= 250;
- break;
- }
- }
- else
- {
- item["shards"] += materialQuantity;
- counterForBreaksShard += materialQuantity;
- if (item["shards"] >= 250)
- {
- Console.WriteLine($"Shadowmourne obtained!");
- item["shards"] -= 250;
- break;
- }
- }
- }
- else if (inputMaterial == "motes")
- {
- int materialQuantity = int.Parse(material[i - 1]);
- if (!item.ContainsKey("motes"))
- {
- counterForBreaksMotes += materialQuantity;
- item.Add("motes", materialQuantity);
- if (item["motes"] >= 250)
- {
- Console.WriteLine($"Dragonwrath obtained!");
- item["motes"] -= 250;
- break;
- }
- }
- else
- {
- item["motes"] += materialQuantity;
- counterForBreaksMotes += materialQuantity;
- if (item["motes"] >= 250)
- {
- Console.WriteLine($"Dragonwrath obtained!");
- item["motes"] -= 250;
- break;
- }
- }
- }
- else
- {
- if (!int.TryParse(inputMaterial, out num) && !itemJunk.ContainsKey(inputMaterial))
- {
- int materialQuantity = int.Parse(material[i - 1]);
- itemJunk.Add(inputMaterial, materialQuantity);
- }
- else if (!int.TryParse(inputMaterial, out num))
- {
- itemJunk[inputMaterial] += int.Parse(material[i - 1]);
- }
- }
- }
- if (counterForBreakFrag >= 250 || counterForBreaksMotes >= 250 || counterForBreaksShard >= 250)
- {
- break;
- }
- }
- if (!item.ContainsKey("fragments"))
- {
- item.Add("fragments", 0);
- }
- if (!item.ContainsKey("shards"))
- {
- item.Add("shards", 0);
- }
- if (!item.ContainsKey("motes"))
- {
- item.Add("motes", 0);
- }
- foreach (var items in item.OrderByDescending(x => x.Value).ThenBy(y => y.Key))
- {
- Console.WriteLine($"{items.Key}: {items.Value}");
- }
- foreach (var itemss in itemJunk.OrderBy(x => x.Key))
- {
- Console.WriteLine($"{itemss.Key}: {itemss.Value}");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement