Предмет: Информатика,
автор: АзалияАзалия
Помогите пожалуйста)
Дана строка содержащая не более 100 символов. Среди символов в строке особую роль играет символ #, появление которого в ней означает удаление предыдущего символа и символ $ появления которого мне означает удвоение предыдущего символа. Соответственно k символов #, идущих подряд удаляют k предыдущих символов строки, если таковые имеются. Если в какой-то момент перед некоторым символом # или &не осталось символов, то этот символ следует игнорировать. Символы # и $ не оказывают влияние друг на друга. Преобразовать исходную строку с учетом указанных значений символов # и $, при этом сами эти символы не выводятся.
Ответы
Автор ответа:
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));
}
}
}
Похожие вопросы
Предмет: Физика,
автор: bwsrtio
Предмет: Русский язык,
автор: rXitachiXr
Предмет: Математика,
автор: pavelkalachev7
Предмет: История,
автор: Klybnishka9
Предмет: История,
автор: 1357953