Предмет: Информатика, автор: АзалияАзалия

Помогите пожалуйста)
Дана строка содержащая не более 100 символов. Среди символов в строке особую роль играет символ #, появление которого в ней означает удаление предыдущего символа и символ $ появления которого мне означает удвоение предыдущего символа. Соответственно k символов #, идущих подряд удаляют k предыдущих символов строки, если таковые имеются. Если в какой-то момент перед некоторым символом # или &не осталось символов, то этот символ следует игнорировать. Символы # и $ не оказывают влияние друг на друга. Преобразовать исходную строку с учетом указанных значений символов # и $, при этом сами эти символы не выводятся.

Ответы

Автор ответа: tarsep
0

using System;

using System.Collections.Generic;

using System.Linq;

namespace task29735221

{

   class Program

   {

       static void Main(string[] args)

       {

           string input = Console.ReadLine();

           LinkedList<char> output = new LinkedList<char>();

           

           foreach (var character in input)

           {

               if (character == '#')

               { if (output.Any()) output.RemoveLast(); }

               else if (character == '$')

               { if (output.Any()) output.AddLast(output.Last.Value); }

               else

                   output.AddLast(character);

           }

           Console.WriteLine(String.Join("", output));

       }

   }

}

Похожие вопросы
Предмет: Математика, автор: pavelkalachev7