找回密码
 欢迎注册
查看: 257|回复: 37

[求助] 图中一共有多少个三角形?

[复制链接]
发表于 2024-11-4 10:51:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
本帖最后由 nyy 于 2024-11-4 11:02 编辑

以前在视频号上看到一个类似的题目,但是没答案。
我也不知道怎么计算,我唯一能想到的就是穷举法,
但是穷举法也比较烧脑筋。

有没有什么好的思路?思路越清晰越简单越好!

应该是8段,而不是8断。拼音输入法的毛病。写这个8段是方便别人不用数,9个点
QQ截图20241104104905.jpg

点评

断?段?一条线,断 k 次,应形成 k+1 段,对吧?  发表于 2024-11-4 11:00
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2024-11-4 10:58:37 | 显示全部楼层
图中任意取三点,一共45个点,C(45,3),再减去三点共线的情况,但是还需要去掉一些根本不存在的情况。这个思路死了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2024-11-4 11:59:53 | 显示全部楼层
本帖最后由 nyy 于 2024-11-4 12:07 编辑
nyy 发表于 2024-11-4 10:58
图中任意取三点,一共45个点,C(45,3),再减去三点共线的情况,但是还需要去掉一些根本不存在的情况。这个 ...


目前我计算出来,一共有330个三角形。

假设每边的段数是n,那么我猜测三角形的个数为
\[\frac{1}{24} n (n+1) (n+2) (n+3)\]

点评

nyy
猜测错误  发表于 2024-11-4 12:47
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2024-11-4 12:11:53 | 显示全部楼层
nyy 发表于 2024-11-4 11:59
目前我计算出来,一共有330个三角形。

假设每边的段数是n,那么我猜测三角形的个数为
  1. Clear["Global`*"];(*清除所有变量*)
  2. deg=Pi/180;(*角度制下1°所对应的弧度*)
  3. pt={Cos[60deg],Sin[60deg]}
  4. n=8;(*每边的段数*)
  5. (*产生所有的三角形的顶点的坐标,形成列表*)
  6. aa=Flatten[#,1]&@Table[i*pt+{j,0},{i,0,n},{j,0,n-i}]
  7. (*产生所有的可能的组合,三个点形成三角形(包括蜕化的三角形)*)
  8. bb=Subsets[aa,{3}];
  9. (*三边相等,根据这个条件,选出所有的可能*)
  10. cc=Select[bb,(EuclideanDistance[#[[1]],#[[2]]]==EuclideanDistance[#[[1]],#[[3]]]==EuclideanDistance[#[[2]],#[[3]]])&]
  11. dd=Length[cc](*计算个数*)
复制代码


穷举法,
1、列出所有的点,
2、然后从这点选出三个点,形成所有的三点组合,
3、再选出能够形成等边三角形的情况。

对于n=8(一个边被分成8段)的情况,有330个三角形

点评

nyy
程序有bug,因为三角形必须有一边平行x轴,而这当中有的三角形的一边不平行x轴  发表于 2024-11-4 12:24
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2024-11-4 12:36:52 | 显示全部楼层

这是一个有趣的问题,但是这并不是一个容易的问题
https://www.jstor.org/stable/3613774
How Many Triangles?

https://oeis.org/A002717
Number of triangles in triangular matchstick arrangement of side n, for n >= 1

  1. Clear["Global`*"];(*清除所有变量*)
  2. deg=Pi/180;(*角度制下1°所对应的弧度*)
  3. pt={Cos[60deg],Sin[60deg]}
  4. n=8;(*每边的段数*)
  5. (*产生所有的三角形的顶点的坐标,形成列表*)
  6. aa=Flatten[#,1]&@Table[i*pt+{j,0},{i,0,n},{j,0,n-i}];
  7. (*产生所有的可能的组合,三个点形成三角形(包括蜕化的三角形)*)
  8. bb=Subsets[aa,{3}];
  9. (*三边相等,根据这个条件,选出所有的可能,*)
  10. cc=Select[bb,And[(EuclideanDistance[#[[1]],#[[2]]]==EuclideanDistance[#[[1]],#[[3]]]==EuclideanDistance[#[[2]],#[[3]]]),Or[(#[[1,2]]==#[[2,2]]),(#[[1,2]]==#[[3,2]]),(#[[2,2]]==#[[3,2]])]]&];
  11. dd=Length[cc](*计算个数*)
复制代码


我先计算出n=8的情况,找出三角形的个数,三角形有一边必然平行x轴,因此纵坐标相等。再加上等边三角形这个约束条件。最后找出n=8的情况。
再依次找出n=4,5,6,7的情况,最后去上面的网站搜索一下这个数列,最后找到了这个结果。

通项公式为a(n) = floor(n(n+2)(2n+1)/8),这个通项公式,还是很让人意外的!难关我想不出来!

毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2024-11-4 12:44:21 | 显示全部楼层
https://math.stackexchange.com/q ... /how-many-triangles

这地方有个提问的回答,开起来很不错!
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2024-11-4 13:05:07 | 显示全部楼层
从简单想起。主帖=8层
1层=001=01=单个
2层=005=04+1=单个+4个
3层=013=09+3+1=单个+4个+9个
4层=027=16+6+3+1+(1)=单个+4个+9个+16个+(单个)。()表示尖朝下。
5层=048=25+10+6+3+1+(3)=单个+4个+9个+16个+25个+(4个)。()表示尖朝下。
6层=078=36+15+10+6+3+1+(6+1)=单个+4个+9个+16个+25个+36个+(4个+9个)。()表示尖朝下。
7层=118=49+21+15+10+6+3+1+(10+3)=单个+4个+9个+16个+25个+36个+49个+(4个+9个)
8层=170=64+28+21+15+10+6+3+1+(15+6+1)=单个+4个+9个+16个+25个+36个+49个+64个+(4个+9个+16个)
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2024-11-4 14:04:40 | 显示全部楼层
有通项公式。

点评

nyy
上面已经给出了通项公式呀,难道你没看到?  发表于 2024-11-4 14:41
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2024-11-4 14:45:40 | 显示全部楼层
本帖最后由 nyy 于 2024-11-4 14:47 编辑


通项公式
\[\left\lfloor \frac{1}{8} n (n+2) (2 n+1)\right\rfloor\]

  1. Clear["Global`*"];(*清除所有变量*)
  2. aa=Table[{n,Floor[n(n+2)(2n+1)/8]},{n,1,20}]
  3. Grid[aa,Alignment->Left](*列表显示*)
复制代码


前二十项的数据
{{1, 1}, {2, 5}, {3, 13}, {4, 27}, {5, 48}, {6, 78}, {7, 118}, {8,
  170}, {9, 235}, {10, 315}, {11, 411}, {12, 525}, {13, 658}, {14,
  812}, {15, 988}, {16, 1188}, {17, 1413}, {18, 1665}, {19,
  1945}, {20, 2255}}


列表
\[\begin{array}{rr}
1 & 1 \\
2 & 5 \\
3 & 13 \\
4 & 27 \\
5 & 48 \\
6 & 78 \\
7 & 118 \\
8 & 170 \\
9 & 235 \\
10 & 315 \\
11 & 411 \\
12 & 525 \\
13 & 658 \\
14 & 812 \\
15 & 988 \\
16 & 1188 \\
17 & 1413 \\
18 & 1665 \\
19 & 1945 \\
20 & 2255 \\
\end{array}\]
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2024-11-4 16:02:36 | 显示全部楼层
nyy 发表于 2024-11-4 14:45
通项公式
\[\left\lfloor \frac{1}{8} n (n+2) (2 n+1)\right\rfloor\]

你这错的不忍直视。

点评

你咋像气球一样,别人一扎你就破防了?  发表于 2024-11-4 17:58
nyy
你水平菜,不敢相信罢了!  发表于 2024-11-4 17:07
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-11-22 07:14 , Processed in 0.050968 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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