Advertisement
Guest User

P03_QuestJournal

a guest
Dec 17th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.91 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.io.InputStreamReader;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. import java.util.stream.Collectors;
  7.  
  8. public class P03_QuestJournal {
  9.     public static void main(String[] args) throws IOException {
  10.         BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  11.  
  12.         List<String> quests = Arrays.stream(reader.readLine().split(", ")).collect(Collectors.toList());
  13.  
  14.         while (true) {
  15.             String inputLine = reader.readLine();
  16.  
  17.             if ("Retire!".equals(inputLine)) {
  18.                 break;
  19.             }
  20.  
  21.             String[] tokens = inputLine.split(" - ");
  22.  
  23.             String command = tokens[0];
  24.             String quest = tokens[1];
  25.  
  26.             switch (command) {
  27.                 case "Start":
  28.                     if (quests.contains(quest)) {
  29.                         continue;
  30.                     } else {
  31.                         quests.add(quest);
  32.                     }
  33.                     break;
  34.                 case "Complete":
  35.                     quests.remove(quest);
  36.                     break;
  37.                 case "Side Quest":
  38.                     String[] tokens2 = quest.split(":");
  39.                     quest = tokens2[0];
  40.                     String sideQuest = tokens2[1];
  41.  
  42.                     if (quests.contains(quest)){
  43.                         if (!quests.contains(sideQuest)){
  44.                             quests.add(quests.indexOf(quest) + 1, sideQuest);
  45.                         }
  46.                     }
  47.                     break;
  48.                 case "Renew":
  49.                     if (quests.contains(quest)){
  50.                         quests.remove(quest);
  51.                         quests.add(quest);
  52.                     }
  53.                     break;
  54.             }
  55.         }
  56.         System.out.println(quests.toString().replaceAll("[\\[\\]]", ""));
  57.     }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement