Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace _05.SoftUniMessages
- {
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Text.RegularExpressions;
- public class Program
- {
- public static void Main()
- {
- string pattern = @"^(\d+)(.+)(\d+)$";
- Regex regex = new Regex(pattern);
- while (true)
- {
- string encryptedMessage = Console.ReadLine();
- if (encryptedMessage == "Decrypt!")
- {
- break;
- }
- int searchedLenght = int.Parse(Console.ReadLine());
- Match message = regex.Match(encryptedMessage);
- if (message.Success)
- {
- char[] symbols = encryptedMessage.ToCharArray();
- List<char> letters = new List<char>();
- List<int> digits = new List<int>();
- StringBuilder decrypted = new StringBuilder();
- for (int i = 0; i < symbols.Length; i++)
- {
- if (Char.IsDigit(symbols[i]))
- {
- digits.Add(symbols[i] - '0');
- }
- if (Char.IsLetter(symbols[i]))
- {
- letters.Add(symbols[i]);
- }
- }
- if (searchedLenght < letters.Count)
- {
- continue;
- }
- else
- {
- for (int i = 0; i < digits.Count; i++)
- {
- int index = digits[i];
- if (index < letters.Count)
- {
- char currentLetter = letters[index];
- decrypted.Append(currentLetter);
- }
- }
- }
- Console.WriteLine($"{string.Join("", letters)} = {decrypted.ToString()}");
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement