Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- String[] input = scanner.nextLine().split(" +");
- List<Integer> numbers = new ArrayList<>();
- for (int i = 0; i < input.length; i++) {
- numbers.add(Integer.valueOf(input[i]));
- }
- String command = scanner.nextLine();
- while (!command.equals("END")) {
- String[] tokens = command.split(" +");
- String instruction = tokens[0];
- if (instruction.contains("Insert")) {
- int paintingNumber = Integer.valueOf(tokens[2]);
- int index = Integer.valueOf(tokens[1]) + 1;
- if (index >= 0 && index < numbers.size()) {
- numbers.add(index, paintingNumber);
- }
- } else if (instruction.contains("Switch")) {
- for (int i = 0; i < numbers.size(); i++) {
- int switchNumberFirst = Integer.valueOf(tokens[1]);
- int index1 = numbers.indexOf(switchNumberFirst);
- int switchNumberSecond = Integer.valueOf(tokens[2]);
- int index2 = numbers.indexOf(switchNumberSecond);
- if (numbers.contains(switchNumberFirst) && numbers.contains(switchNumberSecond)) {
- Collections.swap(numbers, index1, index2);
- break;
- }
- }
- } else if (instruction.contains("Hide")) {
- int numberToRemove = Integer.valueOf(tokens[1]);
- int indexOfNumberToRemove = numbers.indexOf(numberToRemove);
- if (numbers.contains(numberToRemove)) {
- numbers.remove(indexOfNumberToRemove);
- }
- } else if (command.contains("Reverse")) {
- Collections.reverse(numbers);
- } else if (command.contains("Change")) {
- int numberToChange = Integer.valueOf(tokens[1]);
- int indexOfNumberToChange = numbers.indexOf(numberToChange);
- int newNumber = Integer.valueOf(tokens[2]);
- if (numbers.contains(numberToChange)) {
- numbers.set(indexOfNumberToChange, newNumber);
- }
- }
- command = scanner.nextLine();
- }
- for (Integer number : numbers) {
- System.out.print(number + " ");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement