9 / 5 / 4
Регистрация: 03.10.2017
Сообщений: 110
1

Рекурсия: найти пару треугольников, максимально удаленных друг от друга

15.10.2017, 17:51. Показов 1549. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пусть дано n треугольников, заданных координатами своих вершин. Найдите пару треугольников, максимально удаленных друг от друга.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2017, 17:51
Ответы с готовыми решениями:

Найти номера и координаты точек, наиболее удаленных друг от друга
Здравствуйте, кто может помогите с задачами: 1.Задано N точек своими координатами. Найти номера и...

Найти номера и координаты точек, наиболее удаленных друг от друга
Задано N точек своими координатами. Найти номера и координаты точек, наиболее удаленных друг от...

Найти среди точек пару наиболее удаленных друг от друга
Даны n точек плоскости (x1,y2),...(xn,yn). Найти среди них пару наиболее удаленных друг от друга. ...

Определить пару наиболее удаленных друг от друга точек
Четыре точки заданны координатами А(4,8,2) ; В(-6,5,I.2) ; С(-3,7,-4.5) ; D(7,8,2). Определить...

1
Alvin Seville
342 / 272 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9
15.10.2017, 18:57 2
Лучший ответ Сообщение было отмечено ulyana_md как решение

Решение

Цитата Сообщение от ulyana_md Посмотреть сообщение
максимально удаленных друг от друга
Их центры максимально удалены друг от друга?

Добавлено через 41 секунду
И это можно решать циклом. Без рекурсии. Даже удобнее.

Добавлено через 12 минут
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
const
  N = 2;
 
type
  Point = auto class
    X, Y: real;
  end;
 
var
  L: List<(Point, Point, Point)>;
  Max: real;
  i1, i2: integer;
 
begin
  L := new List<(Point, Point, Point)>();
  
  for var i := 1 to N do
    L.Add((new Point(ReadlnInteger('X1:'), ReadlnInteger('Y1:')),
          new Point(ReadlnInteger('X2:'), ReadlnInteger('Y2:')),
          new Point(ReadlnInteger('X3:'), ReadlnInteger('Y3:'))
          ));
  
  Max := real.MinValue;
  for var i := 0 to N - 1 do
    for var j := i + 1 to N - 1 do
    begin
      var p1 := new Point((L[i].Item1.X + L[i].Item2.X + L[i].Item3.X) / 3,
                          (L[i].Item1.Y + L[i].Item2.Y + L[i].Item3.Y) / 3);
      var p2 := new Point((L[j].Item1.X + L[j].Item2.X + L[j].Item3.X) / 3,
                          (L[j].Item1.Y + L[j].Item2.Y + L[j].Item3.Y) / 3);                 
      var d := Sqrt(Sqr(p1.X - p2.X) + Sqr(p1.Y - p2.Y));
      if d > Max then
      begin
        i1 := i;
        i2 := j;
        Max := d;
      end;
    end;
  
  WritelnFormat('Индексы дальних треугольников: {0} и {1}.', i1, i2);
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.10.2017, 18:57
Помогаю со студенческими работами здесь

Найти номера и координаты точек, наиболее удаленных друг от друга
Задано N точек своими координатами. Найти номера и координаты точек, наиболее удаленных друг от...

Рекурсия: найти максимальное количество ферзей, которое можно расставить на доске так, чтобы они не "били" друг друга
Разработайте рекурсивную функцию или процедуру для решения задачи. Дана шахматная доска n на n....

Найдите пару треугольников, максимально удаленных друг от друга
Помогите пожалуйста. Надо написать функцию с использованием рекурсии. Пусть дано множество ...

Найдите пару треугольников, максимально удаленных друг от друга
Помогите пожалуйста. Пусть дано n прямоугольников, заданных координатами своих вершин. Найдите пару...

Определить пару наиболее удаленных друг от друга окружностей
помогите решить задачу. На плоскости задано n произвольно расположенных окружностей. Определить...

Определить пару наиболее удаленных друг от друга позиций массива
Определить пару наиболее удаленных друг от друга позиций массива, в которых располагаются...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru