首页 > 试题广场 >

寻梅踏雪问春

[编程题]寻梅踏雪问春
  • 热度指数:3 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}Bingbong 给定三个二维平面上的整数坐标点 (a,b)(c,d)(e,f),你需要判断能不能以这三个点各自为圆心,画半径相等的圆,使得三个圆中满足任意两个圆都是相切的。换句话说,请判断是否存在一个半径 r \gt 0,使得以这三个点为圆心、以 r 为半径的三个圆两两相切

【名词解释】
\hspace{15pt}相切:两个圆相切,当且仅当两个圆有且仅有一个公共点,且该公共点不在两个圆的内部。

输入描述:
\hspace{15pt}在一行上输入六个整数 a,b,c,d,e,f \left(-10^6\leqq a,b,c,d,e,f\leqq 10^6\right),表示三个坐标点。


输出描述:
\hspace{15pt}如果可以做到,使得三个圆中满足任意两个圆都是相切,输出 \texttt{YES},否则输出 \texttt{NO}
示例1

输入

1 2 3 4 5 6

输出

NO

说明

\hspace{15pt}在这个样例中,点的位置如下图所示:


\hspace{15pt}可以看出,无论半径 r 取何值,三个圆都不可能两两相切。因此,输出 \texttt{NO}

这道题你会答吗?花几分钟告诉大家答案吧!