Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace SimpleTextEditor
- {
- class TextEditor
- {
- static void Main(string[] args)
- {
- var n = int.Parse(Console.ReadLine());
- var text = new StringBuilder();
- var stack = new Stack<string>();
- for (int i = 0; i < n; i++)
- {
- var parts = Console.ReadLine().Split();
- var command = int.Parse(parts[0]);
- switch (command)
- {
- case 1:
- text = text.Append(parts[1]);
- stack.Push(text.ToString());
- break;
- case 2:
- var erase = int.Parse(parts[1]);
- text = text.Remove(text.Length - erase, erase);
- stack.Push(text.ToString());
- break;
- case 3:
- var charIndex = int.Parse(parts[1])-1;
- Console.WriteLine(text.ToString().ToCharArray()[charIndex]);
- break;
- case 4:
- if (stack.Count>1)
- {
- stack.Pop();
- text = text.Clear();
- text = text.Append(stack.Peek());
- }
- else if (stack.Count == 1)
- {
- stack.Pop();
- text = text.Clear();
- }
- break;
- default:
- break;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement