Advertisement
Guest User

Untitled

a guest
Jun 26th, 2019
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.22 KB | None | 0 0
  1. import java.util.ArrayList;
  2. import java.util.Collections;
  3. import java.util.List;
  4. import java.util.Scanner;
  5.  
  6. public class Main {
  7.  
  8.     public static void main(String[] args) {
  9.         Scanner scanner = new Scanner(System.in);
  10.  
  11.         String[] arrayOfNumber = scanner.nextLine().split(" ");
  12.         List<Integer> array = new ArrayList<>();
  13.         int counter = 0;
  14.         int counter2 =0;
  15.         for (int i = 0; i < arrayOfNumber.length; i++) {
  16.             array.add(Integer.parseInt(arrayOfNumber[i]));
  17.         }
  18.  
  19.         String input = scanner.nextLine();
  20.  
  21.         while (!"END".equals(input)){
  22.             String[] token = input.split(" ");
  23.  
  24.             switch (token[0]) {
  25.                 case "Change": {
  26.                     int numb = Integer.parseInt(token[1]);
  27.                     for (int i = 0; i < array.size(); i++) {
  28.                         if (array.get(i).equals(numb)) {
  29.                             int otherNumber = Integer.parseInt(token[2]);
  30.                             array.set(i, otherNumber);
  31.                             break;
  32.                         }
  33.                     }
  34.                     //System.out.println(array);
  35.                     break;
  36.                 }
  37.                 case "Hide": {
  38.                     int numb = Integer.parseInt(token[1]);
  39.                     for (int i = 1; i <= array.size(); i++) {
  40.                         if (array.get(i - 1).equals(numb)) {
  41.                             array.remove(i - 1);
  42.                         }
  43.                     }
  44.                     //System.out.println(array);
  45.                     break;
  46.                 }
  47.                 case "Switch": {
  48.                     int numb = Integer.parseInt(token[1]);
  49.                     int otherNumb = Integer.parseInt(token[2]);
  50. //                    for (int i = 0; i < array.size(); i++) {
  51. //                        if (array.get(i).equals(numb)) {
  52. //                            counter++;
  53. //                            if (counter == 1) {
  54. //                                array.set(i, otherNumb);
  55. //                            }
  56. //                        } else if (array.get(i).equals(otherNumb)) {
  57. //                            counter2++;
  58. //                            if (counter2 == 1) {
  59. //                                array.set(i, numb);
  60. //                            }
  61. //                        }
  62. //                    }
  63.                     int index1 = -1;
  64.                     int index2 = -1;
  65.                     boolean one = false;
  66.                     boolean two = false;
  67.                     for (int i = 0; i < array.size(); i++) {
  68.                         int current = array.get(i);
  69.                         if (!one && current == numb){
  70.                             index1 = i;
  71.                             one = true;
  72.                         }
  73.                         if (!two && current == otherNumb){
  74.                             index2 = i;
  75.                             two = true;
  76.                         }
  77.                         if (one && two){
  78.                             break;
  79.                         }
  80.                     }
  81.                     if (one && two){
  82.                         array.set(index1, otherNumb);
  83.                         array.set(index2, numb);
  84.                     }
  85.                     //System.out.println(array);
  86.                     break;
  87.                 }
  88.                 case "Insert": {
  89.                     int numb = Integer.parseInt(token[1]);
  90.                     int otherNumb = Integer.parseInt(token[2]);
  91.                     if (numb < array.size() && numb >= 0) {
  92.                         array.add(numb + 1, otherNumb);
  93.                     }
  94.                     //System.out.println(array);
  95.                     break;
  96.                 }
  97.                 case "Reverse":
  98.                     Collections.reverse(array);
  99.                     //System.out.println(array);
  100.                     break;
  101.             }
  102.             input = scanner.nextLine();
  103.         }
  104.  
  105.         List<String> convertToStr = new ArrayList<>();
  106.         for (int i = 0; i < array.size(); i++) {
  107.             convertToStr.add(String.valueOf(array.get(i)));
  108.         }
  109.         String output = String.join(" ",convertToStr);
  110.         System.out.println(output);
  111.     }
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement