题意
边长为 1 1 1,边数为 2 n 2n 2n的正多边形可以完全放在一个正方形内部,求正方形的最小边长.
题解
对于C1, n n n为偶数的时候,多边形的最外面四边刚好是分别平行垂直的,因此答案没有异议,为 1 tan π 2 n \frac{1}{\tan \frac{\pi}{2n}} tan2nπ1.
然而C2中当
n
n
n为奇数时,这题就完全不一样了.
以
n
=
3
n=3
n=3为例,六边形横放在正方形当中显然不好,而在中图里,多边形的一条直径和正方形的对角线共线,感性理解+严谨证明可以发现这种情况为最优解.
可以三分角度求解答案,也可以直接使用公式.
如图为
1
4
\frac{1}{4}
41正方形,左侧所示线为多边形直径所在对角线,彩虹笔所指为和正方形的边的接触点,灰线为外接圆(可能比较抽象).
接触点所在半径和图示对称线夹角必然最小,显然有
∣
π
4
−
k
π
n
∣
|\frac{\pi}{4}-\frac{k\pi}{n}|
∣4π−nkπ∣最小,解得最小角度为
π
4
n
\frac{\pi}{4n}
4nπ.
在
Δ
A
O
B
\Delta AOB
ΔAOB中,
∠
A
O
B
\angle AOB
∠AOB已经求得,半径
A
O
AO
AO显然可求,故三角形可解,由此得到
O
B
OB
OB的长以及正方形的边长.
int main() {
for (int t=read();t--;) {
using db=double;
const db pi=3.14159265359;
db a=read();
printf("%.9lf\n",cos(pi/4/a)/sin(pi/2/a));
}
}
答案为 cos π 4 n sin π 2 n \frac{\cos \frac{\pi}{4n}}{\sin \frac{\pi}{2n}} sin2nπcos4nπ,谢谢大家.