Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Linq;
- using System.Collections.Generic;
- namespace SpisuchenManipulator
- {
- class Program
- {
- static void Main(string[] args)
- {
- var numbers = Console.ReadLine()
- .Split()
- .Select(int.Parse)
- .ToList();
- var comandArgs = Console.ReadLine().Split();
- while (true)
- {
- switch (comandArgs[0])
- {
- case "Add":
- var index = int.Parse(comandArgs[1]);
- var element = int.Parse(comandArgs[2]);
- numbers.Insert(index, element);
- break;
- case "addMany":
- var index1 = int.Parse(comandArgs[1]);
- numbers.InsertRange(index1, comandArgs
- .Skip(2).Select(int.Parse).ToList());
- break;
- case "contains":
- var index2 = int.Parse(comandArgs[1]);
- Console.WriteLine(numbers.IndexOf(index2));
- break;
- case "remove":
- var index3 = int.Parse(comandArgs[1]);
- if (index3>0 && index3<numbers.Count)
- {
- numbers.Remove(index3);
- }
- break;
- case "shift":
- var count=int.Parse(comandArgs[1]);
- for (int j = 0; j < count; j++)
- {
- var temp = numbers[0];
- for (int i = 0; i < numbers.Count-1; i++)
- {
- numbers[i] = numbers[i + 1];
- }
- numbers[numbers.Count - 1] = temp;
- }
- break;
- case "sumPairs":
- var tempList = new List<int>();
- for (int i = 1; i < numbers.Count; i+=2)
- {
- int first = numbers[i];
- int second = numbers[i - 1];
- tempList.Add(first + second);
- }
- if (numbers.Count % 2 != 0)
- {
- tempList.Add(numbers.Last());
- }
- numbers.Clear();
- numbers.AddRange(tempList);
- break;
- case "print":
- Console.WriteLine("["+ string.Join(", ",numbers)+"]");
- break;
- default:
- break;
- }
- comandArgs = Console.ReadLine().Split();
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement