P16317 [ICPC 2023 Jinan R] 计算智能

题目描述

给定两条二维笛卡尔平面上的线段,您需要从每条线段上等概率随机选择一个点,并计算两点之间欧氏距离的期望值。

输入格式

有多组测试数据。第一行输入一个整数 $T$($1 \leq T \leq 10^5$)表示测试数据组数,对于每组测试数据: 第一行输入四个整数 $x_1$,$y_1$,$x_2$ 和 $y_2$($-10^3 \le x_1, y_1, x_2, y_2 \le 10^3$)表示第一条线段的两个端点是 $(x_1, y_1)$ 和 $(x_2, y_2)$。 第二行输入四个整数 $x_3$,$y_3$,$x_4$ 和 $y_4$($-10^3 \le x_3, y_3, x_4, y_4 \le 10^3$)表示第二条线段的两个端点是 $(x_3, y_3)$ 和 $(x_4, y_4)$。 保证两条线段的长度均为正数。

输出格式

每组数据输出一行一个数,表示两个随机选择的点之间距离的期望值。 如果相对误差或绝对误差不超过 $10^{-9}$,您的答案将被接受。具体来说,设您的答案为 $a$,裁判的答案为 $b$,当且仅当 $\frac{|a - b|}{\max(1, |b|)} \le 10^{-9}$ 时,您的答案将被接受。

说明/提示

感谢“计算智能”,我们可知: 对于第一组样例数据,距离的期望值为 $$\int_{0}^{1} \int_{0}^{1} |x_0 - x_1| \,\mathrm{d}x_0 \,\mathrm{d}x_1 = \frac{1}{3} \approx 0.333333333333333333;$$ 对于第二组样例数据,距离的期望值为 $$\int_{0}^{1} \int_{0}^{1} \sqrt{x^2+y^2} \,\mathrm{d}x \,\mathrm{d}y = \frac{\sqrt{2}+\ln(1+\sqrt{2})}{3} \approx 0.765195716464212691;$$ 对于第三组样例数据,距离的期望值为 $$\int_{0}^{1} \int_{0}^{1} \sqrt{(x_0-x_1)^2+1} \,\mathrm{d}x_0 \,\mathrm{d}x_1 = \frac{2-\sqrt{2}+3\ln(1+\sqrt{2})}{3} \approx 1.076635732895178009.$$