Ivelin_Arsov

The Imitation Game

Aug 27th, 2020
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.14 KB | None | 0 0
  1. import java.util.Scanner;
  2.  
  3. public class Problem1 {
  4.     public static void main(String[] args) {
  5.         Scanner scan = new Scanner(System.in);
  6.         String encryptedMessage = scan.nextLine();
  7.         String instructions = scan.nextLine();
  8.  
  9.         while (!instructions.equals("Decode")) {
  10.             String[] tokens = instructions.split("\\|");
  11.             String command = tokens[0];
  12.  
  13.             switch (command) {
  14.                 case "Move":
  15.                     int numberOfLetters = Integer.parseInt(tokens[1]);
  16.                     if(numberOfLetters >= 0 && numberOfLetters <= encryptedMessage.length()){
  17.                         String strToMove = encryptedMessage.substring(0, numberOfLetters);
  18.                         StringBuilder mover = new StringBuilder();
  19.                         mover.append(encryptedMessage);
  20.                         mover.replace(0, numberOfLetters, "");
  21.                         mover.append(strToMove);
  22.                         encryptedMessage = mover.toString();
  23.                     }
  24.                     break;
  25.                 case "Insert":
  26.                     int insertIndex = Integer.parseInt(tokens[1]);
  27.                     if(insertIndex >= 0 && insertIndex <= encryptedMessage.length()){
  28.                         String value = tokens[2];
  29.                         StringBuilder stringBuilderInserter = new StringBuilder();
  30.                         stringBuilderInserter.append(encryptedMessage);
  31.                         stringBuilderInserter.insert(insertIndex, value);
  32.                         encryptedMessage = stringBuilderInserter.toString();
  33.                     }
  34.  
  35.                     break;
  36.                 case "ChangeAll":
  37.                     String toChange = tokens[1];
  38.                     if(encryptedMessage.contains(toChange)){
  39.                         String replacement = tokens[2];
  40.                         encryptedMessage = encryptedMessage.replace(toChange, replacement);
  41.                     }
  42.                     break;
  43.             }
  44.             instructions = scan.nextLine();
  45.         }
  46.         System.out.print(String.format("The decrypted message is: %s",encryptedMessage));
  47.     }
  48. }
  49.  
Add Comment
Please, Sign In to add comment