using System;
using System.Linq;
class Program
{
static void Main() {
int[] arr = { 12, 98, 80, 50, 88, 35, 60, 97, 87, 91 };
int N = 4;
var topThree = arr.Select((val, i) => new { val, i })
.OrderByDescending(x => x.val)
.ThenByDescending(x => x.i)
.Take(N)
.ToArray();
foreach (var entry in topThree) {
Console.WriteLine("value: " + entry.val + " index: " + entry.i);
}
}
}
/*
run:
value: 98 index: 1
value: 97 index: 7
value: 91 index: 9
value: 88 index: 4
*/