AT_abc033_d.[ABC033D] 三角形の分類

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

在二维平面上给定 NN 个点。第 ii 个点的坐标为 (xi, yi)(x_i,\ y_i)。此外,任意三个点都不共线。

我们考虑从 NN 个点中选出 33 个点,以这 33 个点为顶点构成一个三角形。总共可以构成 N ∗ (N − 1) ∗ (N − 2) / 6N\ *\ (N\ -\ 1)\ *\ (N\ -\ 2)\ /\ 6 个三角形。请分别求出这些三角形中锐角三角形、直角三角形和钝角三角形的个数。

其中,锐角三角形是指三个角都小于 90∘90^\circ 的三角形,直角三角形是指存在一个角等于 90∘90^\circ 的三角形,钝角三角形是指存在一个角大于 90∘90^\circ 的三角形。

输入格式

输入以如下格式从标准输入读入。

NN
x1x_1 y1y_1
x2x_2 y2y_2
⋮\vdots
xNx_N yNy_N

  • 第 11 行为一个整数 N (3≤N≤2,000)N\ (3\leq N\leq 2,000),表示点的个数。
  • 接下来的 NN 行,每行包含两个用空格分隔的整数 xi (−10,000≤xi≤10,000)x_i\ (-10,000\leq x_i\leq 10,000)、yi (−10,000≤yi≤10,000)y_i\ (-10,000\leq y_i\leq 10,000),表示第 ii 个点的坐标。
  • NN 个点均不相同。
  • 任意 33 个不同的点都不共线。

输出格式

请按顺序输出锐角三角形的个数、直角三角形的个数、钝角三角形的个数,用空格分隔,并以换行符结尾。

输入输出样例

  • 输入#1

    5
    1 3
    2 2
    3 2
    4 1
    4 3

    输出#1

    1 2 7
  • 输入#2

    9
    2 0
    1 1
    3 1
    1 2
    5 2
    0 3
    4 3
    2 4
    4 4

    输出#2

    27 14 43

说明/提示

部分分

本题设有部分分。

  • 对于 N≤100N\leq 100 的数据集,答对可获得部分分 3030 分。

样例解释 1

  • 选择第 22、44、55 个点,可以构成一个锐角三角形。
  • 选择第 11、44、55 个点,可以构成一个直角三角形。
  • 选择第 33、44、55 个点,可以构成一个直角三角形。
  • 其余 77 种选择方式,均可构成钝角三角形。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页