Advertisement
ivanov_ivan

TextEditor

May 21st, 2016
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.30 KB | None | 0 0
  1. package StacksAndQueues;
  2.  
  3. import java.util.Scanner;
  4. import java.util.Stack;
  5.  
  6. public class SimpleTextEditor {
  7.     public static void main(String[] args) {
  8.        
  9.         Scanner sc = new Scanner(System.in);
  10.  
  11.         Stack<StringBuilder> datas = new Stack<>();
  12.  
  13.         int n = sc.nextInt();
  14.         sc.nextLine();
  15.  
  16.         for (int i = 0; i < n; i++) {
  17.             int command = sc.nextInt();
  18.             StringBuilder sb = new StringBuilder();
  19.  
  20.             switch (command) {
  21.                 case 1:
  22.                     String input = sc.nextLine().trim();
  23.                     if (!datas.isEmpty()) {
  24.                         datas.push(datas.peek().append(input));
  25.                     } else {
  26.                         datas.push(sb.append(input));
  27.                     }
  28.                     break;
  29.                 case 2:
  30.                     sb.append(datas.peek());
  31.                     sb.delete(sb.length() - sc.nextInt(), sb.length());
  32.                     datas.push(sb);
  33.                     break;
  34.                 case 3:
  35.                     sb.append(datas.peek());
  36.                     System.out.println(sb.charAt(sc.nextInt() - 1));
  37.                     break;
  38.                 case 4:
  39.                     datas.pop();
  40.                     break;
  41.             }
  42.         }
  43.     }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement