svetliovd

HornetComm

Aug 8th, 2017
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.96 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. using System.Text.RegularExpressions;
  7.  
  8. namespace Hornet_Comm
  9. {
  10.     class Program
  11.     {
  12.         static void Main(string[] args)
  13.         {
  14.             var broadcasts = new List<string>();
  15.             var messages = new List<string>();
  16.             Regex regex1 = new Regex("[0-9]+");
  17.             Regex regex2 = new Regex("[^0-9]+");
  18.             Regex regex3 = new Regex("[\\W]");
  19.             while (true)
  20.             {
  21.                 string line = Console.ReadLine();
  22.                 if (line == "Hornet is Green") { break; }
  23.                 string[] input = line.Split(new string[] { " <-> " }, StringSplitOptions.None);
  24.                 if (input.Count() != 2)
  25.                 {
  26.                     continue;
  27.                 }
  28.                 string firstQuery = input[0];
  29.                 string secondQuery = input[1];
  30.                     if (regex1.IsMatch(firstQuery) && !regex3.IsMatch(secondQuery))
  31.                     {
  32.                         string reversed = new string(firstQuery.ToCharArray().Reverse().ToArray());
  33.                         string temp = reversed + " -> " + secondQuery;
  34.                         messages.Add(temp);
  35.                     }
  36.                     if (regex2.IsMatch(firstQuery) && !regex3.IsMatch(secondQuery))
  37.                     {
  38.                         StringBuilder secondQueryNew = new StringBuilder();
  39.                         for (int i = 0; i < secondQuery.Length; i++)
  40.                         {
  41.                             if (secondQuery[i] <= 122 && secondQuery[i] >= 97)
  42.                             {
  43.                                 secondQueryNew.Append(char.ToUpper(secondQuery[i]));
  44.                             }
  45.                             else if (secondQuery[i] >= 65 && secondQuery[i] <= 90)
  46.                             {
  47.                                 secondQueryNew.Append(char.ToLower(secondQuery[i]));
  48.                             }
  49.                             else
  50.                             {
  51.                                 secondQueryNew.Append(secondQuery[i]);
  52.                             }
  53.                         }
  54.                         string temp = secondQueryNew + " -> " + firstQuery;
  55.                         broadcasts.Add(temp);
  56.                     }      
  57.             }
  58.             Console.WriteLine("Broadcasts:");
  59.             if (broadcasts.Count == 0)
  60.             {
  61.                 Console.WriteLine("None");
  62.             }
  63.             for (int i = 0; i < broadcasts.Count; i++)
  64.             {
  65.                 Console.WriteLine(broadcasts[i]);
  66.             }
  67.             Console.WriteLine("Messages:");
  68.             if (messages.Count == 0)
  69.             {
  70.                 Console.WriteLine("None");
  71.             }
  72.             for (int i = 0; i < messages.Count; i++)
  73.             {
  74.                 Console.WriteLine(messages[i]);
  75.             }
  76.         }
  77.     }
  78. }
Advertisement
Add Comment
Please, Sign In to add comment