Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2017
343
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.17 KB | None | 0 0
  1. namespace _04.Flip_List_Sides
  2. {
  3.     using System;
  4.     using System.Collections.Generic;
  5.     using System.Linq;
  6.  
  7.     public class Program
  8.     {
  9.         public static void Main()
  10.         {
  11.             var inputList = Console.ReadLine().Trim().Split(' ').Select(long.Parse).ToList();
  12.  
  13.  
  14.             if (inputList.Count % 2 != 0)
  15.             {
  16.                 try
  17.                 {
  18.                     OddCountMethod(inputList);
  19.                 }
  20.                 catch (Exception)
  21.                 {
  22.                     Console.WriteLine(string.Join(" ", inputList));
  23.  
  24.                 }
  25.             }
  26.  
  27.             else
  28.             {
  29.                 EvenCountMethod(inputList);
  30.  
  31.             }
  32.         }
  33.  
  34.         public static void OddCountMethod(List<long> inputList)
  35.         {
  36.             var outputList = new List<long>();
  37.  
  38.             for (int i = 0; i < inputList.Count; i++)
  39.             {
  40.                 outputList.Add(inputList[i]);
  41.             }
  42.  
  43.             var last = outputList[outputList.Count - 1];
  44.             var middle = outputList[outputList.Count / 2 + 1];
  45.             var first = outputList[0];
  46.  
  47.             outputList.RemoveAt(outputList.Count - 1);
  48.             outputList.RemoveAt(outputList.Count / 2 + 1);
  49.             outputList.RemoveAt(0);
  50.  
  51.             outputList.Reverse();
  52.  
  53.             outputList.Insert(0, first);
  54.             outputList.Insert((outputList.Count / 2), middle);
  55.             outputList.Add(last);
  56.  
  57.             Console.WriteLine(string.Join(" ", outputList));
  58.         }
  59.  
  60.         public static void EvenCountMethod(List<long> inputList)
  61.         {
  62.             var outputList = new List<long>();
  63.  
  64.             for (int i = 0; i < inputList.Count; i++)
  65.             {
  66.                 outputList.Add(inputList[i]);
  67.             }
  68.  
  69.             var last = outputList[outputList.Count - 1];
  70.             var first = outputList[0];
  71.  
  72.             outputList.RemoveAt(outputList.Count - 1);
  73.             outputList.RemoveAt(0);
  74.  
  75.             outputList.Reverse();
  76.  
  77.             outputList.Insert(0, first);
  78.             outputList.Add(last);
  79.  
  80.             Console.WriteLine(string.Join(" ", outputList));
  81.         }
  82.     }
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement