Advertisement
Guest User

Course Planning

a guest
Jun 22nd, 2019
315
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.98 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 softUniCoursePlanning {
  7. public static void main(String[] args) {
  8. // TODO Auto-generated method stub
  9. Scanner sc = new Scanner (System.in);
  10.  
  11. String[] courses = sc.nextLine().split(", ");
  12. List<String> schedule = new ArrayList<>();
  13. for (String string : courses) {
  14. schedule.add(string);
  15. }
  16. String exercise = "";
  17. String command = sc.nextLine();
  18.  
  19. while (!command.equals("course start")) {
  20. String[] tokens = command.split(":");
  21. switch (tokens[0]) {
  22. case "Add" : if (!schedule.contains(tokens[1])) {
  23. schedule.add(tokens[1]);
  24. } break;
  25. case "Insert" : if (!schedule.contains(tokens[1])) {
  26. int index = Integer.parseInt(tokens[2]);
  27. schedule.add(index , tokens[1]);
  28. } break;
  29. case "Remove" : if (schedule.contains(tokens[1])) {
  30. schedule.remove(tokens[1]);
  31. }
  32. String ex = tokens[1] + "-Exercise";
  33. if (schedule.contains(ex)) {
  34. schedule.remove(ex);
  35. }
  36.  
  37. break;
  38. case "Swap" : String exOne = tokens[1]+ "-Exercise";
  39. String exTwo = tokens[2]+ "-Exercise";
  40.  
  41. if (schedule.contains(tokens[1]) && schedule.contains(tokens[2])) {
  42. String firstElement = tokens[1];
  43. int firstIndex = schedule.indexOf(tokens[1]);
  44. String secondElement = tokens[2];
  45. int secondIndex = schedule.indexOf(tokens[2]);
  46. schedule.remove(tokens[1]);
  47. schedule.remove(tokens[2]);
  48. schedule.add(firstIndex, secondElement);
  49. schedule.add(secondIndex, firstElement);
  50. }
  51. if (schedule.contains(exOne) && schedule.contains(exTwo)) {
  52. //Collections.swap(schedule, schedule.indexOf(exOne), schedule.indexOf(exTwo));
  53. String firstElement = exOne;
  54. int firstIndex = schedule.indexOf(exOne);
  55. String secondElement = exTwo;
  56. int secondIndex = schedule.indexOf(exTwo);
  57. schedule.remove(exOne);
  58. schedule.remove(exTwo);
  59. schedule.add(firstIndex, secondElement);
  60. schedule.add(secondIndex, firstElement);
  61. } else if (schedule.contains(exOne) && !schedule.contains(exTwo)) {
  62. schedule.remove(exOne);
  63. String firstElement = tokens[1];
  64. schedule.add(schedule.indexOf(firstElement)+1, exOne);
  65. } else if (schedule.contains(exTwo) && !schedule.contains(exOne)) {
  66. schedule.remove(exTwo) ;
  67. String secondElement = tokens[2];
  68. schedule.add(schedule.indexOf(secondElement)+1, exTwo);
  69. } break;
  70. case "Exercise" : String ex1 = tokens[1] + "-Exercise";
  71. if (!schedule.contains(tokens[1])) {
  72. schedule.add(tokens[1]);
  73.  
  74. schedule.add(ex1); break;
  75. } else if (schedule.contains(tokens[1]) && !schedule.contains(ex1)) {
  76. int index = schedule.indexOf(tokens[1]);
  77. schedule.add(index+1,ex1);
  78. } break;
  79. }
  80. command = sc.nextLine();
  81. }
  82. for (int i = 0; i < schedule.size(); i++) {
  83. System.out.println((i+1)+"."+schedule.get(i));
  84. }
  85. }
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement