Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace SoftUniCoursePlanning
- {
- class Program
- {
- static void Main(string[] args)
- {
- List<string> courseSchedule = Console.ReadLine().Split(", ").ToList();
- while (true)
- {
- string command = Console.ReadLine();
- if (command == "course start")
- {
- break;
- }
- ModifySchedule(command, courseSchedule);
- }
- foreach (var item in courseSchedule)
- {
- Console.WriteLine($"{courseSchedule.IndexOf(item)+1}.{item}");
- }
- }
- private static void ModifySchedule(string command, List<string> courseSchedule)
- {
- string[] tokens = command.Split(':');
- if (tokens[0] == "Add")
- {
- string lesson = tokens[1];
- if (!courseSchedule.Contains(lesson))
- {
- courseSchedule.Add(lesson);
- }
- }
- else if (tokens[0] == "Insert")
- {
- string lesson = tokens[1];
- int index = int.Parse(tokens[2]);
- if (!courseSchedule.Contains(lesson))
- {
- courseSchedule.Insert(index, lesson);
- }
- }
- else if (tokens[0] == "Remove")
- {
- string lesson = tokens[1];
- string exercise = lesson + "-Exercise";
- if (courseSchedule.Contains(lesson))
- {
- courseSchedule.Remove(lesson);
- if (courseSchedule.Contains(exercise))
- {
- courseSchedule.Remove(exercise);
- }
- }
- }
- else if (tokens[0] == "Swap")
- {
- string firstLesson = tokens[1];
- string secondLesson = tokens[2];
- Swap(firstLesson, secondLesson, courseSchedule);
- }
- else if (tokens[0] == "Exercise")
- {
- string exercise = tokens[1] + "-Exercise";
- if (courseSchedule.Contains(tokens[1]) && !courseSchedule.Contains(exercise))
- {
- int index = courseSchedule.IndexOf(tokens[1]);
- if (index == courseSchedule.Count - 1)
- {
- courseSchedule.Add(exercise);
- }
- else
- {
- courseSchedule.Insert(index + 1, exercise);
- }
- }
- else if (!courseSchedule.Contains(tokens[1]))
- {
- courseSchedule.Add(tokens[1]);
- courseSchedule.Add(exercise);
- }
- }
- }
- private static void Swap(string firstLesson, string secondLesson, List<string> courseSchedule)
- {
- int firstIndex = courseSchedule.IndexOf(firstLesson);
- int secondIndex = courseSchedule.IndexOf(secondLesson);
- string firstExercise = firstLesson + "-Exercise";
- string secondExercise = secondLesson + "-Exercise";
- string temp = "";
- string tempEx = "";
- if (courseSchedule.Contains(firstLesson) && courseSchedule.Contains(secondLesson))
- {
- if (courseSchedule.Contains(firstExercise) || courseSchedule.Contains(secondExercise))
- {
- temp = courseSchedule[firstIndex];
- courseSchedule[firstIndex] = courseSchedule[secondIndex];
- courseSchedule[secondIndex] = temp;
- tempEx = firstExercise;
- firstExercise = secondExercise;
- secondExercise = tempEx;
- }
- else
- {
- temp = courseSchedule[firstIndex];
- courseSchedule[firstIndex] = courseSchedule[secondIndex];
- courseSchedule[secondIndex] = temp;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement