Advertisement
Guest User

Untitled

a guest
Oct 14th, 2019
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.33 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. class Tech_Module
  6. {
  7. static void Main()
  8. {
  9. List<int> numbers = Console.ReadLine().Split(' ').Select(int.Parse).ToList();
  10. string command = string.Empty;
  11. while(command != "END")
  12. {
  13. command = Console.ReadLine();
  14. string[] splitedinput = command.Split(' ').ToArray();
  15. if(command == "END")
  16. {
  17. break;
  18. }
  19. else if(splitedinput[0] == "Change")
  20. {
  21. if (numbers.Contains(int.Parse(splitedinput[1])))
  22. {
  23. int number = int.Parse(splitedinput[1]);
  24. int index = 0;
  25. int numbertoinsert = int.Parse(splitedinput[2]);
  26. for(int i = 0; i < numbers.Count; i++)
  27. {
  28. if(numbers[i] == number)
  29. {
  30. index = i;
  31. }
  32. }
  33. numbers.RemoveAt(index);
  34. numbers.Insert(index, numbertoinsert);
  35. }
  36. }
  37. else if (splitedinput[0] == "Hide")
  38. {
  39. if (numbers.Contains(int.Parse(splitedinput[1])))
  40. {
  41. int number = int.Parse(splitedinput[1]);
  42. int index = 0;
  43. for (int i = 0; i < numbers.Count; i++)
  44. {
  45. if (numbers[i] == number)
  46. {
  47. index = i;
  48. }
  49. }
  50. numbers.RemoveAt(index);
  51. }
  52. }
  53. else if (splitedinput[0] == "Switch")
  54. {
  55. if (numbers.Contains(int.Parse(splitedinput[1])) && numbers.Contains(int.Parse(splitedinput[2])))
  56. {
  57. int number = int.Parse(splitedinput[1]);
  58. int index = 0;
  59. int numbertoswitch = int.Parse(splitedinput[2]);
  60. int secondindex = 0;
  61. for (int i = 0; i < numbers.Count; i++)
  62. {
  63. if (numbers[i] == number)
  64. {
  65. index = i;
  66. }
  67. if (numbers[i] == numbertoswitch)
  68. {
  69. secondindex = i;
  70. }
  71. }
  72. numbers.RemoveAt(index);
  73. numbers.Insert(index, numbertoswitch);
  74. numbers.RemoveAt(secondindex);
  75. numbers.Insert(secondindex, number);
  76. }
  77. }
  78. else if (splitedinput[0] == "Insert")
  79. {
  80.  
  81. int number = int.Parse(splitedinput[2]);
  82. byte index = byte.Parse(splitedinput[1]);
  83. if (index + 1 <= numbers.Count)
  84. {
  85. numbers.Insert(index + 1, number);
  86. }
  87. }
  88. else if (splitedinput[0] == "Reverse")
  89. {
  90. numbers.Reverse();
  91. }
  92. }
  93. Console.WriteLine(string.Join(" ", numbers));
  94. }
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement