Advertisement
damesova

Last Stop [Mimi]

Apr 15th, 2019
279
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.26 KB | None | 0 0
  1. import java.util.Arrays;
  2. import java.util.Collections;
  3. import java.util.List;
  4. import java.util.Scanner;
  5. import java.util.stream.Collectors;
  6.  
  7. public class _03_Task {
  8.     public static void main(String[] args) {
  9.         Scanner scanner = new Scanner(System.in);
  10.  
  11.         List<Integer> list = Arrays.stream(scanner.nextLine().split(" "))
  12.                 .map(Integer::parseInt).collect(Collectors.toList());
  13.  
  14.  
  15.         String input = scanner.nextLine();
  16.  
  17.         while (!input.equals("END")) {
  18.             String[] line = input.split(" ");
  19.  
  20.  
  21.             switch (line[0]) {
  22.                 case "Change":
  23.                     int ind1 = list.indexOf(Integer.parseInt(line[1]));
  24.                     int num = Integer.parseInt(line[2]);
  25.  
  26.                     if (ind1 != -1) {
  27.                         list.set(ind1, num);
  28.                     }
  29.                     break;
  30.                 case "Hide":
  31.                     num = Integer.parseInt(line[1]);
  32.                     int index = list.indexOf(num);
  33.                     if (index != -1) {
  34.                         list.remove(index);
  35.                     }
  36.                     break;
  37.                 case "Switch":
  38.                     int index1 = list.indexOf(Integer.parseInt(line[1]));
  39.                     int ind2 = list.indexOf(Integer.parseInt(line[2]));
  40.                     int firstInt = Integer.parseInt(line[1]);
  41.                     int secondInt = Integer.parseInt(line[2]);
  42.  
  43.                     if (index1 != -1 && ind2 != -1) {
  44.                         list.set(index1, secondInt);
  45.                         list.set(ind2, firstInt);
  46.                     }
  47.                     break;
  48.                 case "Insert":
  49.                     int number = Integer.parseInt(line[2]);
  50.                     int indexIns = Integer.parseInt(line[1]) + 1;
  51.                     if (indexIns >= 0 && indexIns <= list.size()) {
  52.                         list.add(indexIns, number);
  53.                    }
  54.                     break;
  55.                 case "Reverse":
  56.                     Collections.reverse(list);
  57.                     break;
  58.             }
  59.  
  60.             input = scanner.nextLine();
  61.         }
  62.  
  63.        
  64.  
  65.         for (Integer integer : list) {
  66.             System.out.print(integer + " ");
  67.         }
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement