I. Favorite Points

Codeforces
IDCF10157I
Time2000ms
Memory256MB
Difficulty
English · Original
Formal · Original
Преподаватель Д. любит давать контрольные работы. Вот и завтра он очень хочет дать контрольную работу по геометрии. Для формулировки очередной задачи Д. необходимо задать параллелограмм, ромб, квадрат и трапецию. У Д. есть список из n любимых точек; Д. хочет выбрать каждый из четырехугольников так, чтобы все его вершины были любимыми точками, а четырехугольники - невырожденными. Однако от обилия вариантов разбегались глаза, и было непонятно, с чего начинать выбор. Д., как принято в таких случаях, просит Вас написать программу, которая по списку любимых точек найдет четыре числа — количество способов выбрать параллелограмм, ромб, квадрат и трапецию. Д. любезно напоминает, что выпуклый четырехугольник ABCD является: В первой строке записано натуральное число n, 4 ≤ n ≤ 1000 — количество любимых точек Д. . В последующих n строках записано по два целых числа, не превосходящих по модулю 108 — координаты x и y точек. Гарантируется, что все точки попарно различны. Выведите искомые четыре числа. В точности следуйте формату нижеследующего примера. ## Входные Данные В первой строке записано натуральное число n, 4 ≤ n ≤ 1000 — количество любимых точек Д. . В последующих n строках записано по два целых числа, не превосходящих по модулю 108 — координаты x и y точек. Гарантируется, что все точки попарно различны. ## Выходные Данные Выведите искомые четыре числа. В точности следуйте формату нижеследующего примера. ## Примеры Входные данные40 00 11 01 1Выходные данныеParallelograms: 1Rhombuses: 1Squares: 1Trapezoids: 0Входные данные60 00 10 21 01 11 2Выходные данныеParallelograms: 5Rhombuses: 2Squares: 2Trapezoids: 4 [samples]
**Definitions** Let $ n \in \mathbb{Z} $, $ 4 \leq n \leq 1000 $, be the number of distinct points in the plane. Let $ P = \{ (x_i, y_i) \mid i \in \{1, \dots, n\} \} $ be the set of given points, with $ x_i, y_i \in \mathbb{Z} $, $ |x_i|, |y_i| \leq 10^8 $, and all points distinct. **Constraints** All points in $ P $ are pairwise distinct. **Objective** Compute four integers: 1. $ N_{\text{parallelogram}} $: number of non-degenerate parallelograms with vertices in $ P $. 2. $ N_{\text{rhombus}} $: number of non-degenerate rhombi with vertices in $ P $. 3. $ N_{\text{square}} $: number of non-degenerate squares with vertices in $ P $. 4. $ N_{\text{trapezoid}} $: number of non-degenerate trapezoids (at least one pair of opposite sides parallel) with vertices in $ P $. Each quadrilateral is defined by an unordered 4-tuple of distinct points from $ P $, forming a convex quadrilateral (non-degenerate).
API Response (JSON)
{
  "problem": {
    "name": "I. Favorite Points",
    "description": {
      "content": "Преподаватель Д. любит давать контрольные работы. Вот и завтра он очень хочет дать контрольную работу по геометрии. Для формулировки очередной задачи Д. необходимо задать параллелограмм, ромб, квадра",
      "description_type": "Markdown"
    },
    "platform": "Codeforces",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "CF10157I"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Преподаватель Д. любит давать контрольные работы. Вот и завтра он очень хочет дать контрольную работу по геометрии.\n\nДля формулировки очередной задачи Д. необходимо задать параллелограмм, ромб, квадра...",
      "is_translate": false,
      "language": "English"
    },
    {
      "statement_type": "Markdown",
      "content": "**Definitions**  \nLet $ n \\in \\mathbb{Z} $, $ 4 \\leq n \\leq 1000 $, be the number of distinct points in the plane.  \nLet $ P = \\{ (x_i, y_i) \\mid i \\in \\{1, \\dots, n\\} \\} $ be the set of given points,...",
      "is_translate": false,
      "language": "Formal"
    }
  ]
}
Full JSON Raw Segments