Во входном файле даны 9 сторон
В выходной файл в 1 строке записать 3 стороны одного подобного треугольника во 2 строке записать 3 стороны другого треугольника
Помогите пожалуйста решить!
dingoДайте решение задачи в блок-схемах или псевдокоде или на любом другом языке, которым владеете.
Во входном файле даны 9 сторонВ выходной файл в 1 строке записать 3 стороны одного подобного треугольника во 2 строке записать 3 стороны другого треугольникаПомогите пожалуйста решить!
dingoПотом пишем 2 строки по 3 стороны. Куда еще 3 стороны девались? Условие непонятно.
даны 9 сторон
from itertools import combinations ... sides = {'a':a,...} # стороны triangles = filter(is_triangle, combinations(sides,3)) pairs = filter(is_pair, combinations(triangles,2)) similar_triangles = filter(are_similar, pairs)
adrayв коде одна сторона может использоваться в разных треугольниках одновременно
Осталось только дописать функции is_triangle, is_pair, are_similar.
py.user.nextДа, поэтому там есть фильтр по is_pair, где должна проверяться уникальность граней, которые хранятся в словаре.
в коде одна сторона может использоваться в разных треугольниках одновременно
def is_pair(pair): return len(set(pair[0]).union(pair[1])) == 6
triangles = map(dict, filter(is_triangle, combinations(sides.items(),3)))
adrayэту я просмотрел, не обратил внимание
Да, поэтому там есть фильтр по is_pair