Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. // Sequences of bid values:
  2. List<int> bidValues1 = new List<int>() { 1, 2, 3, 4, 5 };
  3. List<int> bidValues2 = new List<int>() { 5, 3, 4, 1, 2 };
  4. List<int> bidValues3 = new List<int>() { 4, 5, 2, 3, 5 };
  5. List<int> bidValues4 = new List<int>() { 3, 3, 0, 2, 3 };
  6.  
  7. // Add all four collections to a new list:
  8. List<List<int>> bidValues = new List<List<int>>();
  9. bidValues.Add(bidValues1);
  10. bidValues.Add(bidValues2);
  11. bidValues.Add(bidValues3);
  12. bidValues.Add(bidValues4);
  13.  
  14. // Uses Aggregate extension method to compare all four sequences:
  15. bidValues.Aggregate((bids1, bids2) =>
  16.     bids1.Zip(bids2, (bid1, bid2) => Math.Max(bid1, bid2)).ToList())
  17.     .Dump("Maximum Bids (General Approach)");
  18.  
  19. bidValues.Aggregate((bids1, bids2) =>
  20.     bids1.Zip(bids2, (bid1, bid2) => Math.Min(bid1, bid2)).ToList())
  21.     .Dump("Minimum Bids (General Approach)");