ejsoon 发表于 2021-9-28 19:44:28

已知兩個不同點畫七個圓,得到另兩個正方形頂點

現在有不同的兩個點,只給你一個圓規,畫七個圓,得到另兩個點,這兩個點跟開始的兩個點是在同一平面的一個正方形的四個頂點。

(此題寡人暫時沒有解出来)

lsr314 发表于 2021-9-29 12:00:03

【震惊】只用圆规就能构造正方形,99%的人都不知道!

风云剑 发表于 2021-9-29 17:26:20

这题是不是还有个限制,给定的两点是正方形相邻的两顶点?
否则一个中垂线不就行了

ejsoon 发表于 2021-9-30 16:36:19

风云剑 发表于 2021-9-29 17:26
这题是不是还有个限制,给定的两点是正方形相邻的两顶点?
否则一个中垂线不就行了

是的,不過即便是對角點,好像也不是很好做。因為只能用圓規,不能用尺。

ejsoon 发表于 2021-10-2 20:11:56

雖然答案近在咫尺,但是寡人希望自己找到答案,然而時過多日依然沒有解開…

mathe 发表于 2021-10-3 16:15:02

步数不多,计算机求解是很容易的。
我们处理对象有点、圆、长度
其中除了给定的两个初始点(0,0),(1,0),其余的点都表示为两个圆的交点。而长度都表示为两个点的距离,圆由一个点和一个长度决定。
有点麻烦的是过一个点可以超过两个圆,同样代表同一个长度的可以有多个点对,通常我们可以随机选择一个最早遇到的匹配项就差不多是最优的了。

我们反复利用上面模式进行迭代:点->长度->圆->点->长度->圆,..直到产生目标长度即可($\sqrt{2}$), 最后在根据生成关系,反向寻找做图关系即可。

mathe 发表于 2021-10-3 17:50:05

Require init Point: (0.000000,0.000000)
Require init Point: (1.000000,0.000000)
Require Distance value 1.000000 from Point to Point
Require Circle from Point Radius 1.000000 from Distance
Require Circle from Point Radius 1.000000 from Distance
Require Point: (0.500000,0.866025) from Circle
Require Point: (0.500000,-0.866025) from Circle
Require Distance value 1.732051 from Point to Point
Require Circle from Point Radius 1.732051 from Distance
Require Circle from Point Radius 1.732051 from Distance
Require Circle from Point Radius 1.000000 from Distance
Require Circle from Point Radius 1.000000 from Distance
Require Point: (1.192219,0.144338) from Circle
Require Point: (-0.192219,-0.144338) from Circle
Found distance 1.414214 from Point to Point

ejsoon 发表于 2021-10-3 18:18:13

本帖最后由 ejsoon 于 2021-10-3 18:24 编辑

最終寡人是通過這個網頁的介紹得到答案的,同時寡人認為,如果要寡人自己尋找到解答,那還是太難了。

(如果用其它地方介紹的方法)即便拿到7L7E,剩下的3V也不是很好拿。

ejsoon 发表于 2021-10-3 18:29:13

不過根據知乎,以及2#的視頻,這道題至少有三種解法。

那麼,如何證明最優解法是畫七個圓?

mathe 发表于 2021-10-4 21:20:39

前面一个公式里面b1输入成b2,找了好久才找出bug.
现在程序可以找出好多解,代码会输出需要做出的圆,都是做出6个圆后得到点(0,1),所以最后再添加一个圆就可以得到(1,1)。

Found one Solution by intersect circle(0.500000,0.866025:1.000000) & circle(0.728714,0.684819:0.736595):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.000000,0.000000), Radius 1.732051
Circle: Center(0.500000,0.866025), Radius 1.000000
Circle: Center(1.500000,-0.866025), Radius 1.732051
Circle: Center(0.728714,0.684819), Radius 0.736595


Found one Solution by intersect circle(0.500000,0.866025:1.000000) & circle(0.728714,0.684819:0.736595):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,0.866025), Radius 1.000000
Circle: Center(0.500000,-0.866025), Radius 1.000000
Circle: Center(1.500000,-0.866025), Radius 1.732051
Circle: Center(0.728714,0.684819), Radius 0.736595


Found one Solution by intersect circle(0.500000,0.866025:1.000000) & circle(0.271286,0.684819:1.000000):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.732051
Circle: Center(0.500000,0.866025), Radius 1.000000
Circle: Center(-0.500000,-0.866025), Radius 1.732051
Circle: Center(0.271286,0.684819), Radius 1.000000

Found one Solution by intersect circle(0.500000,0.866025:1.000000) & circle(0.271286,0.684819:1.000000):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,0.866025), Radius 1.000000
Circle: Center(0.500000,-0.866025), Radius 1.000000
Circle: Center(-0.500000,-0.866025), Radius 1.732051
Circle: Center(0.271286,0.684819), Radius 1.000000

Found one Solution by intersect circle(0.500000,-0.866025:1.000000) & circle(0.728714,-0.684819:0.736595):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.000000,0.000000), Radius 1.732051
Circle: Center(0.500000,-0.866025), Radius 1.000000
Circle: Center(1.500000,0.866025), Radius 1.732051
Circle: Center(0.728714,-0.684819), Radius 0.736595

Found one Solution by intersect circle(0.500000,-0.866025:1.000000) & circle(0.728714,-0.684819:0.736595):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,0.866025), Radius 1.000000
Circle: Center(0.500000,-0.866025), Radius 1.000000
Circle: Center(1.500000,0.866025), Radius 1.732051
Circle: Center(0.728714,-0.684819), Radius 0.736595

Found one Solution by intersect circle(0.500000,-0.866025:1.000000) & circle(0.271286,-0.684819:1.000000):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.732051
Circle: Center(0.500000,-0.866025), Radius 1.000000
Circle: Center(-0.500000,0.866025), Radius 1.732051
Circle: Center(0.271286,-0.684819), Radius 1.000000

Found one Solution by intersect circle(0.500000,-0.866025:1.000000) & circle(0.271286,-0.684819:1.000000):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,0.866025), Radius 1.000000
Circle: Center(0.500000,-0.866025), Radius 1.000000
Circle: Center(-0.500000,0.866025), Radius 1.732051
Circle: Center(0.271286,-0.684819), Radius 1.000000

Found one Solution by intersect circle(-0.500000,0.866025:1.732051) & circle(-0.271286,0.684819:1.444003):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,-0.866025), Radius 1.732051
Circle: Center(-0.500000,0.866025), Radius 1.732051
Circle: Center(-1.000000,0.000000), Radius 1.000000
Circle: Center(-0.271286,0.684819), Radius 1.444003

Found one Solution by intersect circle(-0.500000,-0.866025:1.732051) & circle(-0.271286,-0.684819:1.444003):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,0.866025), Radius 1.732051
Circle: Center(-0.500000,-0.866025), Radius 1.732051
Circle: Center(-1.000000,0.000000), Radius 1.000000
Circle: Center(-0.271286,-0.684819), Radius 1.444003

Found one Solution by intersect circle(-1.000000,0.000000:2.000000) & circle(-0.686141,0.396143:1.732051):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.732051
Circle: Center(0.500000,-0.866025), Radius 1.732051
Circle: Center(-1.000000,0.000000), Radius 2.000000
Circle: Center(-0.686141,0.396143), Radius 1.732051

Found one Solution by intersect circle(1.500000,0.866025:1.000000) & circle(1.271286,0.684819:0.736595):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,-0.866025), Radius 1.732051
Circle: Center(1.500000,0.866025), Radius 1.000000
Circle: Center(2.000000,0.000000), Radius 1.000000
Circle: Center(1.271286,0.684819), Radius 0.736595

Found one Solution by intersect circle(1.500000,-0.866025:1.000000) & circle(1.271286,-0.684819:0.736595):
Circle: Center(0.000000,0.000000), Radius 1.000000
Circle: Center(1.000000,0.000000), Radius 1.000000
Circle: Center(0.500000,0.866025), Radius 1.732051
Circle: Center(1.500000,-0.866025), Radius 1.000000
Circle: Center(2.000000,0.000000), Radius 1.000000
Circle: Center(1.271286,-0.684819), Radius 0.736595



页: [1] 2 3
查看完整版本: 已知兩個不同點畫七個圓,得到另兩個正方形頂點