Разбор добавил Джафар Исхоков
Эту задачу можно тупо перебрать все варианты. В переменой n будем хранить число отрезков. В массиве
а будем хранить длинный каждого отрезка. Объявим переменную целого типа s = 0, где будет храниться
количество способов выбрать из этих отрезков три которыми можно создать треугольник. Пробежим
циклом for с 1 до n с счетчиком i. Внутри этого цикла зададим еще один цикл с 1 до i с счетчиком k.
Внутри второго цикла зададим еще один цикл с 1 до k с счетчиком j. Теперь внутри третьего цикла
проверяем если все эти три отрезки (т.е. a[i], a[k], a[j]) выполняются свойстве треугольника
(т.е. a + b > c где a, b, c - стороны треугольника) то увеличим переменную s на 1. В конце выводим
переменную s.
Дан набор из N отрезков различной длины. Сколькими способами можно выбрать из этих отрезков три, из которых можно составить (невырожденный) треугольник?
Выходные данные
Программа должна вывести одно число - искомое количество способов.
Количество отрезков - не менее 3 и не более 20. Длина каждого отрезка - натуральное число, не превосходящее 1000. Все отрезки имеют разную длину.
Сдать: для сдачи задач необходимо
войти в систему