Aug-1task.py 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. # В команде Тинькофф произошла реорганизация — объединились два отдела. Новые коллеги хотят сидеть рядом, поэтому офису требуется ремонт.
  2. # Прежние места каждого отдела имели форму прямоугольника. Новая площадка должна быть квадратной, а также содержать предыдущие места, т.к. некоторые разработчики очень привязаны к ним. К сожалению, размеры офиса ограничены, поэтому зона должна иметь минимальную площадь.
  3. # Строители пытаются посчитать, сколько материала им понадобится для ремонта. Для этого им нужно знать итоговую площадь обновленной площадки. Пожалуйста, помогите им
  4. # Формат входных данных
  5. # В первой строке заданы четыре целых числа: x_1x1​, y_1y1​, x_2x2​, y_2y2​, где (x_1, y_1)(x1​,y1​) и (x_2, y_2)(x2​,y2​) — координаты левого нижнего и правого верхнего углов прежнего места первого отдела. Известно, что 0 \leq x_1 < x_2 \leq 100≤x1​<x2​≤10 и 0 \leq y_1 < y_2 \leq 100≤y1​<y2​≤10.
  6. # Во второй строке заданы координаты места второго отдела в том же формате, что и первый.
  7. # Гарантируется, что исходные площадки двух отделов не пересекаются, а так же не касаются друг друга.
  8. # Формат выходных данных
  9. # В единственной строке выведите одно число — площадь новой объединенной зоны.
  10. # обрабатываем ввод, записывая в массив строк через пробел и преобразуем в массив чисел
  11. dep1_s = input().split()
  12. dep1 = [int(num_s) for num_s in dep1_s]
  13. dep2_s = input().split()
  14. dep2 = [int(num_s) for num_s in dep2_s]
  15. list_x = [dep1[0], dep1[2], dep2[0], dep2[2]]
  16. list_y = [dep1[1], dep1[3], dep2[1], dep2[3]]
  17. max_x = max(list_x)
  18. min_x = min(list_x)
  19. res_x = (max_x - min_x) ** 2
  20. max_y = max(list_y)
  21. min_y = min(list_y)
  22. res_y = (max_y - min_y) ** 2
  23. if res_x > res_y:
  24. print(res_x)
  25. else:
  26. print(res_y)
  27. # находим расстояния между точками по модулю
  28. # list_dep = [abs(dep1[0] - dep2[0]), abs(dep1[0] - dep2[2]), abs(dep1[2] - dep2[2]), abs(dep1[2] - dep2[0]), abs(dep1[1] - dep2[1]), abs(dep1[3] - dep2[3]), abs(dep1[1] - dep2[3]), abs(dep1[3] - dep2[1])]
  29. # находим максимальное значение по модулю и возводим его в квадрат для расчета площади фигуры, выводим получившееся значение
  30. # res = max(list_dep) * max(list_dep)
  31. # print(res)