Advertisement
bullit3189

List Manipulation Advanced

Jan 23rd, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.39 KB | None | 0 0
  1. using System;
  2. using System.Linq;
  3. using System.Collections.Generic;
  4.  
  5. public class Program
  6. {
  7. public static void Main()
  8. {
  9. List<long>numbers = Console.ReadLine().Split().Select(long.Parse).ToList();
  10.  
  11. int counter=0;
  12.  
  13. while (true)
  14. {
  15. string command = Console.ReadLine();
  16.  
  17. if (command=="end")
  18. {
  19. break;
  20. }
  21.  
  22. string[] token = command.Split();
  23.  
  24. string line = token[0];
  25.  
  26. if (line=="Add")
  27. {
  28. int number = int.Parse(token[1]);
  29.  
  30. numbers.Add(number);
  31. counter++;
  32. }
  33. else if (line == "Remove")
  34. {
  35. int number = int.Parse(token[1]);
  36.  
  37. numbers.Remove(number);
  38. counter++;
  39. }
  40. else if (line=="RemoveAt")
  41. {
  42. int index = int.Parse(token[1]);
  43.  
  44. numbers.RemoveAt(index);
  45. counter++;
  46. }
  47. else if (line=="Insert")
  48. {
  49. int number = int.Parse(token[1]);
  50. int index = int.Parse(token[2]);
  51.  
  52. numbers.Insert(index,number);
  53. counter++;
  54. }
  55. else if (line=="Contains")
  56. {
  57. long number = long.Parse(token[1]);
  58.  
  59. bool contain = numbers.Contains(number);
  60.  
  61. if (contain==true)
  62. {
  63. Console.WriteLine("Yes");
  64. }
  65. else
  66. {
  67. Console.WriteLine("No such number");
  68. }
  69. }
  70. else if (line=="PrintEven")
  71. {
  72. List<long>evenNums = new List<long>();
  73.  
  74. for (int i=0; i<numbers.Count; i++)
  75. {
  76. if (numbers[i]%2==0)
  77. {
  78. evenNums.Add(numbers[i]);
  79. }
  80. }
  81. Console.WriteLine(string.Join(" ",evenNums));
  82. evenNums.Clear();
  83. }
  84. else if (line=="PrintOdd")
  85. {
  86. List<long>oddNums = new List<long>();
  87.  
  88. for (int i=0; i<numbers.Count; i++)
  89. {
  90. if (numbers[i]%2==1)
  91. {
  92. oddNums.Add(numbers[i]);
  93. }
  94. }
  95. Console.WriteLine(string.Join(" ",oddNums));
  96. oddNums.Clear();
  97. }
  98. else if (line=="GetSum")
  99. {
  100. long sum = numbers.Sum();
  101. Console.WriteLine(sum);
  102. }
  103. else if (line=="Filter")
  104. {
  105. string condition = token[1];
  106. long number = long.Parse(token[2]);
  107.  
  108. if (condition == "<")
  109. {
  110. List <long> less = new List<long>();
  111.  
  112. for (int i=0; i<numbers.Count; i++)
  113. {
  114. if (numbers[i] < number)
  115. {
  116. less.Add(numbers[i]);
  117. }
  118. }
  119. Console.WriteLine(string.Join(" ",less));
  120. less.Clear();
  121. }
  122. else if (condition == ">")
  123. {
  124. List <long> more = new List<long>();
  125.  
  126. for (int i=0; i<numbers.Count; i++)
  127. {
  128. if (numbers[i] > number)
  129. {
  130. more.Add(numbers[i]);
  131. }
  132. }
  133. Console.WriteLine(string.Join(" ",more));
  134. more.Clear();
  135. }
  136. else if (condition == ">=")
  137. {
  138. List <long> moreAndEqual = new List<long>();
  139.  
  140. for (int i=0; i<numbers.Count; i++)
  141. {
  142. if (numbers[i] >= number)
  143. {
  144. moreAndEqual.Add(numbers[i]);
  145. }
  146. }
  147. Console.WriteLine(string.Join(" ",moreAndEqual));
  148. moreAndEqual.Clear();
  149. }
  150. else if (condition == "<=")
  151. {
  152. List <long> lessAndEqual = new List<long>();
  153.  
  154. for (int i=0; i<numbers.Count; i++)
  155. {
  156. if (numbers[i] <= number)
  157. {
  158. lessAndEqual.Add(numbers[i]);
  159. }
  160. }
  161. Console.WriteLine(string.Join(" ",lessAndEqual));
  162. lessAndEqual.Clear();
  163. }
  164. }
  165. }
  166.  
  167. if (counter>0)
  168. {
  169.  
  170. Console.WriteLine(string.Join(" ",numbers));
  171. }
  172.  
  173. }
  174. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement