Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Text.RegularExpressions;
- using System.Threading.Tasks;
- namespace ConsoleApp2
- {
- class Program
- {
- static void Main(string[] args)
- {
- string input;
- var broadcasts = new List<string>();
- var messages = new List<string>();
- var messagePattern = @"^([0-9]+) <-> ([0-9A-Za-z]+)$";
- var broadcastPattern = @"^([^0-9]+) <-> ([A-Za-z0-9]+)$";
- Regex messageRegex = new Regex(messagePattern);
- Regex broadcastRegex = new Regex(broadcastPattern);
- while ((input = Console.ReadLine()) != "Hornet is Green")
- {
- Match messageMatch = messageRegex.Match(input);
- Match broadcastMatch = broadcastRegex.Match(input);
- if (messageMatch.Success)
- {
- var recipient = messageMatch.Groups[1].Value;
- char[] array = recipient.ToCharArray();
- Array.Reverse(array);
- var recipientCode = new string(array);
- var message = messageMatch.Groups[2].Value;
- var outputMessage = recipientCode + " -> " + message;
- messages.Add(outputMessage);
- }
- else if (broadcastMatch.Success)
- {
- var message = broadcastMatch.Groups[1].Value;
- var frequency = broadcastMatch.Groups[2].Value.ToCharArray();
- for (int i = 0; i < frequency.Length; i++)
- {
- if (char.IsUpper(frequency[i]))
- {
- frequency[i] = char.ToLower(frequency[i]);
- continue;
- }
- if (char.IsLower(frequency[i]))
- {
- frequency[i] = char.ToUpper(frequency[i]);
- }
- }
- var outputFrequency = new string(frequency);
- var outputBroadcast = outputFrequency + " -> " + message;
- broadcasts.Add(outputBroadcast);
- }
- else
- {
- continue;
- }
- }
- Console.WriteLine("Broadcasts:");
- if (broadcasts.Count == 0)
- {
- Console.WriteLine("None");
- }
- else
- {
- foreach (var broadcast in broadcasts)
- {
- Console.WriteLine(broadcast);
- }
- }
- Console.WriteLine("Messages:");
- if (messages.Count == 0)
- {
- Console.WriteLine("None");
- }
- else
- {
- foreach (var message in messages)
- {
- Console.WriteLine(message);
- }
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment