YavorGrancharov

Hornet_Comm(90%)

Aug 10th, 2017
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.74 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Hornet_Comm
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             string input = Console.ReadLine();
  14.  
  15.             List<string> broadcasts = new List<string>();
  16.             List<string> messages = new List<string>();
  17.  
  18.             while (input != "Hornet is Green")
  19.             {
  20.                 string[] tokens = input
  21.                     .Split(new string[] { " <-> " },
  22.                     StringSplitOptions.RemoveEmptyEntries);
  23.  
  24.                 string left = tokens[0];
  25.                 string right = tokens[1];
  26.  
  27.                 if (left.All(char.IsDigit) && right.All(char.IsLetterOrDigit))
  28.                 {
  29.                     char[] reversed = left.ToCharArray();
  30.                     Array.Reverse(reversed);
  31.                     string newLeft = new string(reversed);
  32.                     messages.Add(newLeft);
  33.                     messages.Add(right);
  34.                 }
  35.                 else if (!left.All(char.IsDigit) && right.All(char.IsLetterOrDigit))
  36.                 {
  37.                     string newRight = string.Empty;
  38.                     foreach (var ch in right)
  39.                     {
  40.                         if (char.IsUpper(ch))
  41.                         {
  42.                             newRight += Char.ToLower(ch);
  43.                         }
  44.                         else
  45.                         {
  46.                             newRight += Char.ToUpper(ch);
  47.                         }
  48.                     }
  49.                     broadcasts.Add(newRight);
  50.                     broadcasts.Add(left);
  51.                 }
  52.  
  53.                 input = Console.ReadLine();
  54.             }
  55.  
  56.             Console.WriteLine("Broadcasts:");
  57.             if (!broadcasts.Any())
  58.             {
  59.                 Console.WriteLine("None");
  60.             }
  61.             else
  62.             {
  63.                 string broadcast = string.Empty;
  64.                 for (int i = 0; i < broadcasts.Count; i += 2)
  65.                 {
  66.                     broadcast = broadcasts[i] + " -> " + broadcasts[i + 1];
  67.                     Console.WriteLine(string.Join("", broadcast));
  68.                 }
  69.             }
  70.             Console.WriteLine("Messages:");
  71.             if (!messages.Any())
  72.             {
  73.                 Console.WriteLine("None");
  74.             }
  75.             else
  76.             {
  77.                 string message = string.Empty;
  78.                 for (int i = 0; i < messages.Count; i += 2)
  79.                 {
  80.                     message = messages[i] + " -> " + messages[i + 1];
  81.                     Console.WriteLine(string.Join("", message));
  82.                 }
  83.             }
  84.         }
  85.     }
  86. }
Advertisement
Add Comment
Please, Sign In to add comment