SHARE
TWEET

04 Cubic’s Messages

North_Point Aug 13th, 2017 57 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Text.RegularExpressions;
  6. using System.Threading.Tasks;
  7.  
  8. namespace _04__Cubic_s_Messages
  9. {
  10.     class Program
  11.     {
  12.         static void Main(string[] args)
  13.         {
  14.             var regex = new Regex(@"^([0-9]+)([a-zA-Z]+)([^a-zA-Z]*)$");
  15.  
  16.             while (true)
  17.             {
  18.                 var input = Console.ReadLine();
  19.                 if (input == "Over!")
  20.                 {
  21.                     break;
  22.                 }
  23.                 var num = int.Parse(Console.ReadLine());
  24.                 var matches = regex.Match(input).Groups;
  25.  
  26.                 var first = matches[1].Value;
  27.                 var middle = matches[2].Value;
  28.                 var second = matches[3].Value;
  29.                 var concat = first + second;
  30.                 if (middle.Length == num)
  31.                 {
  32.                     StringBuilder result = new StringBuilder();
  33.                     foreach (var item in concat)
  34.                     {
  35.                         if (char.IsDigit(item))
  36.                         {
  37.                             var cnt = int.Parse(item.ToString());
  38.                             if (cnt < middle.Length)
  39.                             {
  40.                                 result.Append(middle[cnt]);
  41.                             }
  42.                             else
  43.                             {
  44.                                 result.Append(' ');
  45.                             }
  46.                         }
  47.                     }
  48.                     Console.WriteLine("{1} == {0}",result.ToString(),middle);
  49.                 }
  50.             }
  51.         }
  52.     }
  53. }
RAW Paste Data
Top