Ограничений по времени нет. проверять на расположение точек на одной прямой,предполагаю тоже не надо.
Спасибо за подсказку. Единственная проблема возникает-как записать полученние длины сторон в двумерный массив? Я двумерные массивы плохо знаю. Семантически как это будет? массив размера n/3 на 3 и в каждом столбце записаны три длины сторон треугольника?
Как я поняла, мне достаточно будет проверять,что точки не одинаковые и читая значения длин из массива считать периметры,а потом искать максимальным?
По логике, максимальный периметр получится при наибольших сторонах.
>>> двумерные массивы плохо знаю.
ничего сложного. это массив одномерных массивов.
пример инициализации статического двумерного массива
int array[10] [20] ;
пример инициализация динамического двумерного массива
int ** array = new int * [N];
for(int i=0; i < N; i++)
array[i] = new int[N];
>>> массив размера n/3 на 3 и в каждом столбце записаны три длины сторон треугольника?
массив n x n, где array[i][j] = длине между i-ой и j-ой точкой.
исправите lens[i][j] на lens[i][k]. а то 2 раза одно и тоже расстояние прибавляется.