You are viewing a single comment's thread. Return to all comments →
C#
public static List<int> maximumPerimeterTriangle(List<int> sticks) { List<List<int>> points = new List<List<int>>(); var orderSticks = sticks.Order().ToList(); int lenght = orderSticks.Count(); for(int i = 0; i < lenght - 2; i++){ int a = orderSticks[i]; int b = orderSticks[i + 1]; int c = orderSticks[i + 2]; if((a + b) > c && (a + c) > b && (b + c) > a){ points.Add(new List<int>{a, b,c}); } } if(points.Count() == 0 ) return new List<int>{-1}; long perimeterMax = -1; int index = 0; foreach(List<int> point in points){ long sum = point.Sum(x => (long)x); if(sum > perimeterMax){ perimeterMax = sum; index = points.IndexOf(point); } } return points[index]; } }
Seems like cookies are disabled on this browser, please enable them to open this website
Maximum Perimeter Triangle
You are viewing a single comment's thread. Return to all comments →
C#