Advertisement
Guest User

Untitled

a guest
Jun 12th, 2021
369
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.33 KB | None | 0 0
  1. package bgstudents;
  2. import java.lang.reflect.Array;
  3. import java.util.*;
  4. import java.util.stream.Collectors;
  5.  
  6. public class main {
  7.     public static void main(String[] args) {
  8.         Scanner input = new Scanner(System.in);
  9.         List<String> Lessons = Arrays.stream(input.nextLine().split(", ")).collect(Collectors.toList());
  10.  
  11.         String newInput = input.nextLine();
  12.  
  13.         while(!newInput.equalsIgnoreCase("course start")){
  14.             List <String> Split = Arrays.stream(newInput.split("\\:+")).collect(Collectors.toList());
  15.  
  16.             String Command = Split.get(0);
  17.             switch(Command){
  18.                 case"Add":
  19.                     String lessonTitle = Split.get(1);
  20.                     if(!Lessons.contains(lessonTitle)){
  21.                         Lessons.add(lessonTitle);
  22.                     }
  23.                     break;
  24.                 case"Insert":
  25.                     lessonTitle = Split.get(1);
  26.                     int Index = Integer.parseInt(Split.get(2));
  27.  
  28.                     if(!Lessons.contains(lessonTitle) && (Index>=0 && Index<Lessons.size())){
  29.                         Lessons.add(Index,lessonTitle);
  30.                     }
  31.                     break;
  32.                 case"Remove":
  33.                     lessonTitle = Split.get(1);
  34.                     String exerciseTitle = Split.get(1)+"-Exercise";
  35.  
  36.                     if(Lessons.contains(lessonTitle) && Lessons.contains(exerciseTitle)){
  37.                         Lessons.remove(lessonTitle);
  38.                         Lessons.remove(exerciseTitle);
  39.                     }
  40.                     if(Lessons.contains(lessonTitle)){
  41.                         Lessons.remove(lessonTitle);
  42.                     }
  43.  
  44.                     if(Lessons.contains(exerciseTitle)){
  45.                         Lessons.remove(exerciseTitle);
  46.                     }
  47.  
  48.                     break;
  49.                 case"Swap":
  50.                     String lessonTitle1 = Split.get(1);
  51.                     String lessonTitle2 = Split.get(2);
  52.  
  53.                     if(Lessons.contains(lessonTitle1) && Lessons.contains(lessonTitle2)) {
  54.                         int indexOfFirst = Lessons.indexOf(lessonTitle1);
  55.                         int indexOfSecond = Lessons.indexOf(lessonTitle2);
  56.  
  57.                         String tempValue = Lessons.get(indexOfFirst);
  58.  
  59.                         Lessons.set(indexOfFirst, lessonTitle2);
  60.                         Lessons.set(indexOfSecond, tempValue);
  61.  
  62.                         if(Lessons.contains(lessonTitle1+"-Exercise")){
  63.                             String tempName = lessonTitle1+"-Exercise";
  64.                             Lessons.remove(lessonTitle1 + "-Exercise");
  65.  
  66.                             if(indexOfSecond+1<=Lessons.size()-1){
  67.                                 Lessons.add(indexOfSecond+1,tempName);
  68.                             }else{
  69.                                 Lessons.add(tempName);
  70.                             }
  71.                         }
  72.  
  73.                         if(Lessons.contains(lessonTitle2+"-Exercise")){
  74.                             String tempName = lessonTitle2+"-Exercise";
  75.                             Lessons.remove(lessonTitle2 + "-Exercise");
  76.  
  77.                             if(indexOfFirst+1<=Lessons.size()-1){
  78.                                 Lessons.add(indexOfFirst+1,tempName);
  79.                             }else{
  80.                                 Lessons.add(tempName);
  81.                             }
  82.                         }
  83.                     }
  84.                     break;
  85.                 case"Exercise":
  86.                     lessonTitle = Split.get(1);
  87.                     String newValue = lessonTitle+"-Exercise";
  88.  
  89.                     if(Lessons.contains(lessonTitle)){
  90.                         int indexOf = Lessons.indexOf(lessonTitle);
  91.                         if(indexOf<=Lessons.size()-1) {
  92.                             Lessons.add(indexOf + 1, newValue);
  93.                         }else{
  94.                             Lessons.add(newValue);
  95.                         }
  96.                     }else{
  97.                         Lessons.add(lessonTitle);
  98.                         Lessons.add(newValue);
  99.                     }
  100.             }
  101.             newInput=input.nextLine();
  102.         }
  103.  
  104.         for(int i=1;i<=Lessons.size();i++){
  105.             System.out.printf("%s.%s\n",i,Lessons.get(i-1));
  106.         }
  107.     }
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement