Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayDeque;
- import java.util.Deque;
- import java.util.Scanner;
- public class SimpleTextEditor {
- public static void main(String[] args) {
- Scanner scanner=new Scanner(System.in);
- int n=Integer.parseInt(scanner.nextLine());
- StringBuilder text=new StringBuilder();
- Deque<StringBuilder> stack=new ArrayDeque<>();
- while (n-->0){
- String[] tokens=scanner.nextLine().split("\\s+");
- String commmand=tokens[0];
- switch (commmand){
- case "1":
- text.append(tokens[1]);
- stack.push(new StringBuilder(text));
- break;
- case "2":
- int count=Integer.parseInt(tokens[1]);
- int start=text.length()-count;
- text.delete(start,start+count);
- stack.push(new StringBuilder(text));
- break;
- case "3":
- System.out.println(text.charAt(Integer.parseInt(tokens[1])));
- break;
- case "4":
- if(stack.size()>1) {
- stack.pop();
- text = stack.peek();
- }
- break;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement