X横X列的线条组成的宫格里一共有多少长方形,哪家AI聪明呢
起因是朋友分享了一个通义千问的问题,“一个五行四列的长方形宫格图,删掉第一列第二行这个小格的下边和第三列第五行这个小格的右边。现在,图中一共有多少个长方形?需要同时考虑这些边作为其他长方形上边和左边的情况,并考虑到有长方形同时使用这两个边的情况。”
省略掉中间的思考过程,通义千问最后的回答是“图中共有111个长方形”。
本着有些偏见的观点我想验证一下他正不正确。当然我首先去chatgpt grok gemini同样的问题去问了一波,各种家一不同的答案:
原始长方形大家都一样,都是150,这个就不管了。
名称 | 第一次 | 第二次(推理/深度) |
---|---|---|
chatGPT | 127 | 111 |
grok | 113 | 111 |
gemini 2.5pro | 127 | 97 |
DeepSeek | 147 | 124 |
claude(通过perplxcity) | 113 | 139(perplxcity) |
copilot(最后配标题图想到) | 132 | 111 |
因为每一次生成给的结果可能都不一样,每个不同的类型都只试一次,非常好,几家给了几个答案。那谁计算的正确呢?
关于原始长方形的数量
原始长方形大家的数量都是正确的,不过,也顺带着把他们的方法描述一下。
计算方法:
四列就是5条线,每2条线就可以组合成长方形的一条横边,那就可以有 10 种不同的组合
五行就是6条线,每2条线就可以组合成长方形的一条纵边,那就可以有15 种不同的组合
同一种横和同一种纵可以组合一种矩形。
然后有一个特定的公式计算这种组合的数,叫“组合数公式”
从n个元素中取出k个元素,k个元素的组合数量为:
这个东西好象并没有什么用,但是知道这个名字之后,你可以找到现成的各种语言的算法可以直接拿来~~~
{\displaystyle C_{k}^{n}={n \choose k}={\frac {P_{k}^{n}}{k!}}={\frac {n!}{k!(n-k)!}}}
当然也可以用另一种方法,因为我们要取的是N个里面取两个进行组件,然后会有一张熟悉的图。
可以用n(n+1)/2的求和公式进行计算,把横向和纵向结合到一起就是:
总数等于:[n(n+1) * *m(m+1)]/4 = [ 4 ** 5 * *5 ** 6]/4=150
拉这个主要是想找个方法,计算自定义数量的列和行组成会有多少矩形的
计算出缺少指定边之后的方式
借由AI整理思想,开个界面实现试试:
1、基于刚刚上一步分析的,生成的组合可能性,然后用两个数组分别存储,得到两个数组:
- >> 一个水平边界数组:记录所有存在横向边
- >> 一个垂直边界数组:记录所有存在纵向边
2、生成网格,记录矩形
3、遍历矩形,检查每一个矩形的四条边界是否存在,存在才计数。(不要在乎性能)
然后就有了下面的这个。
剩余:111个 ?
回头往上面一看。我拷,就chatGPT和grok的推理模式是对的。
换其它几个情况验证一下
只有1个和2*2的格子的时候,人眼可见的可以辨别出来。
用3*2的时候,我闲的蛋做了每一个方格的解构....
详细拆分
看似是可行的,最后换两个肉眼感觉不会影响数量的线看看是不是一致,貌似也是可行的。
最后
chatGPT和grok的推理模式的理解能力还是强的。copilot原来也可以。通义一开始的回答还挺准的。
AI在很多的问题上可以给我提供非常完美的帮助,不过在有些难以描述或者难以理解的时刻,也会偶尔变成犯糊涂的“半吊子智能”。
名称 | 第一次 | 第二次(推理/深度) |
---|---|---|
chatGPT | 127 | 111 |
grok | 113 | 111 |
copilot(最后配标题图想到) | 132 | 111 |
gemini 2.5pro | 127 | 97 |
DeepSeek | 147 | 124 |
claude(通过perplxcity) | 113 | 139(perplxcity) |