Loading...
VladimirDikovski avatar VladimirDikovski 1 Точки

Задача 9 от Stacks and Queues

Здравейте на тази задача имам 70 точки в Judge ,възможно ли е да я погледнете .

https://pastebin.com/iEHs7FGP

Problem 9.  Simple Text Editor

You are given an empty text. Your task is to implement 4 commands related to manipulating the text

  • 1 someString - appends someString to the end of the text
  • 2 count - erases the last count elements from the text
  • 3 index - returns the element at position index from the text
  • 4 - undoes the last not undone command of type 1 / 2 and returns the text to the state before that operation

Input

  • The first line contains n, the number of operations.
  • Each of the following n lines contains the name of the operation followed by the command argument, if any, separated by space in the following format CommandName Argument.

Output

  • For each operation of type 3 print a single line with the returned character of that operation.

Constraints

  • 1 ≤ N ≤ 105
  • The length of the text will not exceed 1000000
  • All input characters are English letters.
  • It is guaranteed that the sequence of input operation is possible to perform.

 

 

Тагове:
0
C# Advanced
knoteva avatar knoteva 1081 Точки

Здравей,

При команда 4, след попването трябва да проверяваш дали стекът е празен:

stack.Pop();
            if (stack.Count > 0)
            {
                text = stack.Peek();
            }
            else
            {
                text = string.Empty;
            }

Освен това последния тест не минава заради мемори лимит.  От друга тема видях, че команда 2 може да се "опрости":

 private static string RemoveElemnts(string[] currentElemnt, string text)
        {


            int count = int.Parse(currentElemnt[1]);
            text = text.Substring(0, text.Length - count);

            return text;
        }

(Но пак минава поне от десетия път в judge).

0
29/12/2019 15:57:50
VladimirDikovski avatar VladimirDikovski 1 Точки

Благодаря много , и 90 точки е добре .

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.