Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Text.RegularExpressions;
- namespace _03.HornetComm
- {
- public class StartUp
- {
- public static void Main()
- {
- string messagePattern = @"(^[0-9]+) <-> ([A-Za-z0-9]+$)";
- string broadcastPattern = @"(^\D+) <-> ([A-Za-z0-9]+$)";
- Regex regexMessage = new Regex(messagePattern);
- Regex regexBroadcast = new Regex(broadcastPattern);
- List<string> messages = new List<string>();
- List<string> broadcasts = new List<string>();
- while (true)
- {
- string inputMessage = Console.ReadLine();
- if (inputMessage == "Hornet is Green")
- {
- break;
- }
- Match matchMessage = regexMessage.Match(inputMessage);
- Match matchBroadcast = regexBroadcast.Match(inputMessage);
- if (matchMessage.Success)
- {
- string recipientsCode = matchMessage.Groups[1].ToString();
- string message = matchMessage.Groups[2].ToString();
- char[] reversedRecipient = recipientsCode.ToCharArray();
- Array.Reverse(reversedRecipient);
- string recipientsCodeReversed = new string(reversedRecipient);
- messages.Add(recipientsCodeReversed + " -> " + message);
- }
- else if (matchBroadcast.Success)
- {
- string message = matchBroadcast.Groups[1].ToString();
- string frequency = matchBroadcast.Groups[2].ToString();
- char[] frequencyToArr = frequency.ToCharArray();
- for (int i = 0; i < frequencyToArr.Length; i++)
- {
- if (Char.IsUpper(frequencyToArr[i]))
- {
- frequencyToArr[i] = Char.ToLower(frequencyToArr[i]);
- }
- else if (Char.IsLower(frequencyToArr[i]))
- {
- frequencyToArr[i] = Char.ToUpper(frequencyToArr[i]);
- }
- }
- string frequencyChanged = new string(frequencyToArr);
- broadcasts.Add(frequencyChanged + " -> " + message);
- }
- }
- Console.WriteLine("Broadcasts:");
- if (broadcasts.Count > 0)
- {
- foreach (var broadcast in broadcasts)
- {
- Console.WriteLine(broadcast);
- }
- }
- else
- {
- Console.WriteLine("None");
- }
- Console.WriteLine("Messages:");
- if (messages.Count > 0)
- {
- foreach (var message in messages)
- {
- Console.WriteLine(message);
- }
- }
- else
- {
- Console.WriteLine("None");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment