Другие языки программирования и технологии

Как написать алгоритм?

Есть тетраэдр. Одна из сторон тетраэдра вымазана экскрементами. На другой сидит муха.
Найти наибольший путь мухи до фекалий с помощью муравьиного алгоритма
Наибольший, видимо, бесконечен ;)
Владимир Рубашка Краб, как к этому подступиться? Вроде это не сложная задачка... https://otvet.mail.ru/question/180057422
Развернуть фигуру и посчитать вектор.
Например так:
(как в условии первого комментария K,L,M -длины сторон, a,b,c - координаты анализов, x,y,z - координаты мухи)
определяем грань мухи ->
if (x==0 || x==K) { fly_side = (x==0) ? 1 : 2; x = y; y = z;}
else if (y==0 || y==L) { fly_side = (y==0) ? 4: 5; y = z;}
else if (z==0 || z==M) fly_side = (z==0) ? 7 : 8;
Таким же макаром грань кала (только для abc вместо xyz) shit_side;
if (shit_side == fly_side) расстояние = модуль 2D вектора муха-гвно;
else if (shit_side - fly_side != 1 || fly_side - shit_side !=1) // Смежные грани (не противоположенные стороны)
switch(fly_side)
{
case 1:
case 2: if (shit_side==4 || shit_side==5) расстояние = sqrt((x-(K-a))^2 + (y-(M-b))^2);
else расстояние = sqrt((x-(K-a))^2+(y-(L-b))^2); break;
case 4:
case 5: if (shit_side==1 || shit_side==2) тоже самое c L M или L K
case 7:
case 8: if (shit_side==1 || shit_side==2) тоже самое c M L или M K
}
else
{
switch(fly_side)
1,2 min = (L<=M) ? L : M; расстояние = sqrt((x-(L-a+min))^2 + (y-(M-b+min))^2); break;
4,5 min=K<M; K M
7,8 min=L<K; L K
}

Не проверял, уверен, что где-то напутал с KLM. Но примерно так.
Ty Moya Ya Ya Tvoy
Ty Moya Ya Ya Tvoy
16 778
Владимир Рубашка Не компилируется!
Юркэ ) вот же вам делать нехуй пздц хД
взять да и разделить
с ув. Шариков
К. Рам
К. Рам
1 462
fsb.ru