using System;
class MiddleOut
{
static void Main()
{
int[] arr = { 0, 1, 2, 3, 4, 5, 6, 7 };
int n = arr.Length;
int mid = n / 2; // middle index for even-sized arrays
int left = mid - 1; // expand left
int right = mid; // expand right
// Iterate outward from the middle
while (left >= 0 || right < n)
{
if (right < n) {
Console.Write(arr[right] + " ");
right++;
}
if (left >= 0) {
Console.Write(arr[left] + " ");
left--;
}
}
}
}
/*
run:
4 3 5 2 6 1 7 0
*/