找回密码
 快速注册
搜索
查看: 92|回复: 4

[几何] 来自知乎:三角形分割成四个等内切圆的小三角形

[复制链接]

730

主题

1万

回帖

9万

积分

积分
93593
QQ

显示全部楼层

kuing 发表于 2025-2-4 17:11 |阅读模式
本帖最后由 kuing 于 2025-2-4 21:44 编辑
网址:zhihu.com/question/10902305664
标题:三角形内部四个等圆半径问题?
已知三角形 ABC 中 BC=63648, AB=11925, AC=70677。 过 A 点做三条射线将三角形 ABC 分成内接圆半径等长的四个小三角形。求这个内接圆的半径长度?

我的回答(未完):
引理:`\triangle ABC` 中,内切圆半径为 `r`,记 `BC` 上的高为 `h_a`,则
\[\frac r{h_a}=\frac a{a+b+c}.\]
(引理证明略)

回到原题:记 `BC=a`, `CA=b`, `AB=c`,设三条射线将 `BC` 分成四段长度分别为 `x`, `y`, `z`, `w`,三条射线被截得的长度分别为 `t`, `u`, `v`,如图:
v2-a8e4af60c7c209e1d4be8159c15600c1_1440w.png

\[x + y + z + w = a,\quad ①\]
由引理,由于四个小三角形的内切圆半径相等,高也相等,所以有
\[\frac x{x+c+t}=\frac y{y+t+u}=\frac z{z+u+v}=\frac w{w+v+b},\quad ②\]
由斯特瓦尔特定理有
\begin{align*}
t^2&=\frac{u^2x+c^2y}{x+y}-xy,&③\\
u^2&=\frac{v^2y+t^2z}{y+z}-yz,&④\\
v^2&=\frac{b^2z+u^2w}{z+w}-zw,&⑤
\end{align*}
代入原题数据 `a=63648`, `b=70677`, `c=11925`,则由①②③④⑤可解出:
\[
x = 7200,~ y = 10800,~ z = 17280,~ w = 28368,~ t = 16875,~ u = 26325,~ v = 42795,
\]
再代内切圆半径公式可得最终所求为
\[r=\frac12\sqrt{\frac{(x+c-t)(c+t-x)(t+x-c)}{x+c+t}}=2025.\]

解完之余,很好奇命题者是怎么构造数据,使得线段全是整数,所求还是今年年份?尝试破解下。

考虑更多的分割,又或者说往右继续作三角形和相等的内切圆,尝试求出各底与那些线的递推关系,那就变成数列问题。
v2-de500e8761bc20bc4b04251206b0ca9d_1440w.png
如上图,按照前面的方法,对于第 `n` 和第 `n+1` 个小三角形的边长,有如下关系
\begin{gather*}
\frac{x_n}{x_n+t_n+t_{n+1}}=\frac{x_{n+1}}{x_{n+1}+t_{n+1}+t_{n+2}},\quad(*)\\
t_{n+1}^2=\frac{t_n^2x_{n+1}+t_{n+2}^2x_n}{x_{n+1}+x_n}-x_{n+1}x_n,\quad(**)
\end{gather*}
由式 (*) 知 `\left\{\frac{x_n}{t_n+t_{n+1}}\right\}` 为常数列,设该常数为 `C`,即
\[x_n=C(t_{n+1}+t_n),\]
代入式 (**) 即
\[t_{n+1}^2=\frac{t_n^2(t_{n+2}+t_{n+1})+t_{n+2}^2(t_{n+1}+t_n)}{t_{n+2}+2t_{n+1}+t_n}-C^2(t_{n+2}+t_{n+1})(t_{n+1}+t_n),\]
恰好能化出很简洁的递推
\[t_{n+2}=\frac{2(C^2+1)}{1-C^2}t_{n+1}-t_n,\]
则可求出通项为
\[t_n=\frac{(1+C)^2t_1-(1-C^2)t_2}{4C}\left(\frac{1-C}{1+C}\right)^{n-1}+\frac{(1-C^2)t_2-(1-C)^2t_1}{4C}\left(\frac{1+C}{1-C}\right)^{n-1},\quad(*{*}*)\]
也就是说,只要给出第一个小三角形的三边长,后面的所有小三角形的三边表达式都能写出来。

那么出题的关键就是确定第一个小三角形,得同时满足:
  • 半径是年份(或你想要的数)
  • 三边为整数
  • 上述通项起码有前几项为整数

糟了,好像变成了数论问题,我弱项……先睡鸟,未完待续……

编辑于 2025-01-31 02:13

========== 以上是原回答,以下是更新 ==========
(由于我数论渣和编程也菜,想法不成熟可能会不断修改,而知乎上编辑很麻烦,所以先在论坛这里更新)
\begin{gather*}
r=\frac12\sqrt{\frac{(x_1+t_1-t_2)(x_1+t_2-t_1)(t_1+t_2-x_1)}{x_1+t_1+t_2}},\quad x_1=C(t_1+t_2)\\
\riff(1-C)^2(1+C)(t_1+t_2)^2-4(1-C)t_1t_2+4(1+C)r^2=0,\quad(1)
\end{gather*}
目标就是要找到合适的 `t_1`, `t_2\inN^+` 和 `C\inQ` 满足上式且 `r` 是你想要的数,同时还得使得前面求出的通项式 (***) 中有连续几项为整数(由通项公式易知不可能恒为整数,只能希望数量尽量多些)。

用软件来找,分两步,首先找到满足式 (1) 的,再将它们代入式 (***) 中看看有多少整数项。

令 `C=p/q` 为既约分数且 `0<p<q`,式 (1) 化为
\[(p-q)^2(p+q)(t_1+t_2)^2+4(p-q)q^2t_1t_2+4(p+q)q^2r^2=0,\quad(2)\]
先试试能不能找到开头题目的数据,用 mma 运行
  1. r = 2025;
  2. ttt = Reduce[(p - q)^2 (p + q) (t1 + t2)^2 + 4 (p - q) q^2 t1 t2 + 4 q^2 (p + q) r^2 == 0
  3.    && 0 < p < q < 10
  4.    && r < t1 <= t2
  5.    && GCD[p, q] == 1, {p, q, t1, t2}, Integers]
复制代码

(这里如果不限定 q < 10 会解不出来,只好缩小范围它就能给出该范围内的解)
运行约一分钟,会给出一大堆解,这个解集存放在 ttt 里,给后面调用。
然后第二步,先设计一个函数
  1. ztn[c_, t1_, t2_] := Module[{n, n1, n2, t},
  2.   t[k_] = ((1 + c)^2 t1 - (1 - c^2) t2)/(4 c) ((1 - c)/(1 + c))^(k - 1) + ((1 - c^2) t2 - (1 - c)^2 t1)/(4 c) ((1 + c)/(1 - c))^(k - 1);
  3.   n = 3; While[IntegerQ[t[n]], n++]; n1 = n - 1;
  4.   n = 0; While[IntegerQ[t[n]], n--]; n2 = n + 1;
  5.   {c, n1 - n2 + 1, Table[t[k], {k, n2, n1}]}]
复制代码

该函数根据 c, t1, t2 列出整数项的 `t_n`、数目及相应的 `C`,然后运行
  1. Table[ztn[ttt[[k, 1, 2]]/ttt[[k, 2, 2]], ttt[[k, 3, 2]], ttt[[k, 4, 2]]], {k, Length[ttt]}] // Union // MatrixForm
复制代码

其中 Union 是去除重复,运行结果也是一堆,很多只有两三个 `t_n` 是整数,就不全贴了,只贴几个长的:

最长的串是当 `C=1/2` 时有连续 11 个整数(也就是可以作 10 个内切圆)的三串:
  1. {29837,10779,6093,9531,25677,76059,227853,683451,2050317,6150939,18452813}
  2. {147685,49395,16965,7155,6885,15795,45765,136755,410085,1230195,3690565}
  3. {738125,246075,82125,27675,10125,6075,10125,27675,82125,246075,738125}
复制代码

(还有两串是前两个的倒序,也算是重复,但不知如何去除)
这些解的数字间比例太大了,要是画出来肯定看不清。

还有两串是当 `C=1/4` 时有连续 7 个整数的:
  1. {11093,10155,11925,16875,26325,42795,70677}
  2. {24531,15885,11475,10125,11475,15885,24531}
复制代码

这第一串的后 5 个数正是开头题目的数据!终于找到你了O(∩_∩)O哈!😇
那就是说开头题目还可以向左边再作两个等内切圆,边也是整数。
咦?另一个回答 zhihu.com/question/10902305664/answer/89957311245 不就是么,也就是这个的答案也是 2025 了。
而第二串是左右对称的,那中间那条线就是垂直底边了。
那就目前看起来,`r=2025` 最好的数据确实就是开头题目的数据。

接下来尝试构造明年的题,用同样的方式,只是将程序第一行改成 r = 2026;
结果却少了很多,也没有很长的串,最长的只有当 `C=1/3` 时有两串 5 数:
  1. {17221,10130,8104,10130,17221}
  2. {1026185,2052346,4104680,8209354,16418705}
复制代码

(也未必没有更长,毕竟我最开头限制了 q<10,输出的并不是全部解)

r = 2024 的还行,有几串 9 数,也是 `C=1/3` 的:
  1. {8635,13046,23980,46904,93280,186296,372460,744854,1489675}
  2. {8671,8510,12604,23000,44896,89240,178204,356270,712471}
  3. {31505,16546,9860,8104,10400,17896,34340,67954,135545}
  4. {64265,128146,256100,512104,1024160,2048296,4096580,8193154,16386305}
  5. {65021,32890,17204,10120,8096,10120,17204,32890,65021}
复制代码


2026 那么少,会不会是因为 2026 的质因数分解是 2*1013,因数太少?不知道……

让半径小一点呢?来个 r = 666 试试,结果还行:
`C=1/2`,7 数:
  1. {2098,4350,12402,36990,110898,332670,998002}
  2. {27010,9102,3330,1998,3330,9102,27010}
复制代码

`C=1/3`,5 数:
  1. {2665,3386,5800,11114,21985}
  2. {2775,2886,4440,8214,16095}
  3. {3589,6290,12136,24050,47989}
  4. {4539,8430,16536,32910,65739}
  5. {5661,3330,2664,3330,5661}
  6. {12465,24714,49320,98586,197145}
  7. {37011,73950,147864,295710,591411}
  8. {110905,221786,443560,887114,1774225}
复制代码


来取一串造个具体题目吧,画出来不太难看的,就上面这堆的第二串 {2775,2886,4440,8214,16095} 感觉还行,相应的 `x_n` 是 {1887, 2442, 4218, 8103},和为 16650,所以出来的题目就是:

`\triangle ABC` 中,`BC=16650`, `AB=2775`, `AC=16095`,过 `A` 作三条射线将 `\triangle ABC` 分成内切圆半径相等的四个小三角形,求这个内切圆的半径长度。
geogebra-export.png

继续待续……

68

主题

434

回帖

4269

积分

积分
4269

显示全部楼层

hejoseph 发表于 2025-2-4 23:42
从 $\dfrac{r}{h_a}=\dfrac{a}{a+b+c}$ 可推得 $1-\dfrac{2r}{h_a}=\tan\dfrac{B}{2}\tan\dfrac{C}{2}$,应用到这些三角形中,如果分成 $n$ 个内切圆相等的三角形,就得到 $\left(1-\dfrac{2r}{h_a}\right)^n=\tan\dfrac{B}{2}\tan\dfrac{C}{2}$,半径就求出来了。

730

主题

1万

回帖

9万

积分

积分
93593
QQ

显示全部楼层

 楼主| kuing 发表于 2025-2-5 00:16
hejoseph 发表于 2025-2-4 23:42
从 $\dfrac{r}{h_a}=\dfrac{a}{a+b+c}$ 可推得 $1-\dfrac{2r}{h_a}=\tan\dfrac{B}{2}\tan\dfrac{C}{2}$,应 ...


对,我也发现了这个,把 1# 引理倒过来,然后变换一下
\begin{gather*}
\frac{h_a}r=\frac{a+b+c}a=1+\frac{\sin B+\sin C}{\sin A}=1+\frac{\cos\frac{B-C}2}{\cos\frac{B+C}2}=1+\frac{1+\tan\frac B2\tan\frac C2}{1-\tan\frac B2\tan\frac C2}\\
\riff\tan\frac B2\tan\frac C2=1-\frac{2r}{h_a},
\end{gather*}
正打算换个方向思考构造数据,刚画好了图:
QQ20250205-000823.png
对于所有小三角形,内切圆半径与高都相同,由以上结论即有
\[\tan\alpha_n\tan\beta_n=1-\frac{2r}{h_a},\quad n=1,2,\ldots,\]
又显然 `\beta_n+\alpha_{n+1}=90\du`,所以 `\tan\beta_n\tan\alpha_{n+1}=1`,假设分成 `n` 个小三角形,则上式取 `n` 为 `1` 到 `n` 全部相乘,即得
\[\left(1-\frac{2r}{h_a}\right)^n=\tan\alpha_1\tan\beta_n=\tan\frac B2\tan\frac C2,\]
这里的 `B`, `C` 为大三角形的两底角。

730

主题

1万

回帖

9万

积分

积分
93593
QQ

显示全部楼层

 楼主| kuing 发表于 2025-2-5 14:42
kuing 发表于 2025-2-5 00:16
对,我也发现了这个,把 1# 引理倒过来,然后变换一下
\begin{gather*}
\frac{h_a}r=\frac{a+b+c}a=1+\fr ...


那也就进一步得到相邻 `k` 个小三角形构成的三角形的内切圆半径也相等,下图为 `k=2`:
QQ20250205-140456.png
这是因为在 `\tan\alpha_n\tan\beta_n=1-2r/h_a` 取 `n` 为 `i` 到 `i+k-1` 后相乘利用 `\tan\beta_n\tan\alpha_{n+1}=1`,即得
\[\tan\alpha_i\tan\beta_{i+k-1}=\left(1-\frac{2r}{h_a}\right)^k,\]
所以相邻 `k` 个小三角形构成的三角形的内切圆半径也相等,设它们的半径为 `r_k`,则
\[1-\frac{2r_k}{h_a}=\left(1-\frac{2r}{h_a}\right)^k\riff r_k=\frac{h_a}2\left(1-\left(1-\frac{2r}{h_a}\right)^k\right).\]

730

主题

1万

回帖

9万

积分

积分
93593
QQ

显示全部楼层

 楼主| kuing 发表于 2025-2-5 16:29

续 3#

本帖最后由 kuing 于 2025-2-6 15:03 编辑 设 `AB=x+y`, `BC=y+z`, `CA=z+x`,易知
\begin{gather*}
\tan\frac B2\tan\frac C2=\frac x{x+y+z},\\
h_a=\frac{2\sqrt{xyz(x+y+z)}}{y+z},
\end{gather*}
于是接 3# 的结果,当分成 `n` 个小三角形时,小内切圆的半径为
\begin{align*}
r&=\frac{h_a}2\left(1-\sqrt[n]{\tan\frac B2\tan\frac C2}\right)\\
&=\frac{\sqrt{xyz(x+y+z)}}{y+z}\left(1-\sqrt[n]{\frac x{x+y+z}}\right),
\end{align*}
可以从这里直接构造合适的正整数 `x`, `y`, `z`。

令 `y=px`, `z=qx`,上式变成
\[r=x\cdot\frac{\sqrt{pq}\sqrt{1+p+q}}{p+q}\left(1-\frac1{\sqrt[n]{1+p+q}}\right),\]
当 `n` 为奇数时,令 `\sqrt{pq}=s`, `\sqrt[n]{1+p+q}=t^2`, `t>1`,上式变成
\[r=x\cdot\frac{st^n}{t^{2n}-1}\left(1-\frac1{t^2}\right),\]
由 `pq=s^2`, `p+q=t^{2n}-1` 有
\[p,q=\frac{t^{2n}-1\pm\sqrt{(t^{2n}-1)^2-4s^2}}2=\frac{t^{2n}-1}2\left(1\pm\sqrt{1-\left(\frac{2s}{t^{2n}-1}\right)^2}\right),\]
为了让 `p`, `q` 为有理数,再令
\[\frac{2s}{t^{2n}-1}=\frac{2u}{1+u^2},\quad0<u<1,\]
就有
\begin{align*}
p,q&=\frac{t^{2n}-1}2\left(1\pm\frac{1-u^2}{1+u^2}\right),\\
r&=x\cdot\frac{ut^n}{1+u^2}\left(1-\frac1{t^2}\right),\\
y,z&=x\cdot\frac{t^{2n}-1}2\left(1\pm\frac{1-u^2}{1+u^2}\right),\\
a&=y+z=x(t^{2n}-1),\\
b,c&=x\cdot\frac{t^{2n}-1}2\left(1\pm\frac{1-u^2}{1+u^2}\right)+x,
\end{align*}
这样就实现了有理化,相除有
\begin{align*}
\frac ar&=\frac{t^{2n}-1}{\frac{ut^n}{1+u^2}\left(1-\frac1{t^2}\right)},\\
\frac br,\frac cr&=\frac{\frac{t^{2n}-1}2\left(1\pm\frac{1-u^2}{1+u^2}\right)+1}{\frac{ut^n}{1+u^2}\left(1-\frac1{t^2}\right)},
\end{align*}
作个置换 `t\to1/t` 似乎好看一点,变成
\begin{align*}
a&=\frac{1+u^2}u\cdot\frac{t^{-n}-t^n}{1-t^2}\cdot r,\\
b,c&=\frac{\pm(t^{-n}-t^n)(1-u^2)+(t^{-n}+t^n)(1+u^2)}{2u(1-t^2)}r\\
&=\frac{t^{-n}+t^nu^2}{u(1-t^2)}r,\frac{t^n+t^{-n}u^2}{u(1-t^2)}r,
\end{align*}
其中参数 `t`, `u\in(0,1)`,very nice。

然后就可以开挂了,代你想要的 `r` 和 `n`,历遍参数 `t`, `u` 在 `(0,1)` 里的有理数,找出正整数 `a`, `b`, `c`。

当 `n` 为偶数时,`t` 的次数全为偶数,此时应对上式作置换 `t\to\sqrt t` 再进行历遍……

明天再写代码,继续待续……😪

不过,在小内切圆半径、大三角形三边都为整数的情况下,是否能确保里面那些线也是整数?

手机版|悠闲数学娱乐论坛(第3版)

GMT+8, 2025-3-4 13:14

Powered by Discuz!

× 快速回复 返回顶部 返回列表