Advertisement
vinikol

03. Phoenix Grid

Nov 3rd, 2017
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.92 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 _11_Sept
  9. {
  10.     class Program
  11.     {
  12.         static void Main(string[] args)
  13.         {
  14.             string pattern = @"^([^ _]{3}\.+)+([^ _]{3})$";
  15.  
  16.             string input;
  17.  
  18.             while (true)
  19.             {
  20.                 input = Console.ReadLine();
  21.                 if (input == "ReadMe")
  22.                 {
  23.                     break;
  24.                 }
  25.                 Match match = Regex.Match(input, pattern);
  26.  
  27.                 if (Regex.Match(input, pattern).Success)
  28.                 {
  29.                     List<string> matchList = match.ToString().Split('.').ToList();
  30.                     StringBuilder matchBuilder = new StringBuilder();
  31.  
  32.                     foreach (var item in matchList)
  33.                     {
  34.                         matchBuilder.Append(item);
  35.                     }
  36.  
  37.                     string matchLine = matchBuilder.ToString();
  38.  
  39.                     var lefthalf = matchLine.Substring(0, matchLine.Length / 2);
  40.                     var reversedhalf = new string(matchLine.Reverse().ToArray());
  41.                     var righthalf = reversedhalf.Substring(0, matchLine.Length / 2);
  42.  
  43.                     if (lefthalf == righthalf && !matchLine.Contains("_") && !matchLine.Contains(" "))
  44.                     {
  45.                         Console.WriteLine("YES");
  46.                     }
  47.                     else
  48.                     {
  49.                         Console.WriteLine("NO");
  50.                     }
  51.                 }
  52.  
  53.                 else if (input.Length == 3 && input[0] == input[2])
  54.                 {
  55.                     Console.WriteLine("YES");
  56.                 }
  57.  
  58.                 else
  59.                 {
  60.  
  61.                     Console.WriteLine("NO");
  62.  
  63.                 }
  64.  
  65.             }
  66.  
  67.         }
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement