aboutsummaryrefslogtreecommitdiff
path: root/challenge-286/jtimothyking/csharp/ch-2.cs
blob: 3c074ac7ec552c5549ff2118a69951a0c47d06b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
namespace ch_2;

public static class Ch2
{
    public static void Main(string[] args)
    {
        var ints = args.Select(int.Parse).ToList();
        if (ints.Count < 1) return;
        while (ints.Count > 1) ints = ints.MinMax().ToList();
        Console.WriteLine(ints[0]);
    }

    private static IEnumerable<int> MinMax(this IEnumerable<int> ints)
    {
        var doMin = true;
        foreach (var pair in ints.Chunk(2))
        {
            yield return doMin ? pair.Min() : pair.Max();
            doMin = !doMin;
        }
    }
}