ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 天地一相

[已解决] 对元素无交集分组,感觉有点难度

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-1-31 19:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
micch 发表于 2024-1-31 19:23
123,456,789,第一组出现过123,那么如果不允许123出现在第二组和第三组; 457,123,689  或者  689,123,457 ...

组间无顺序的是分组问题,有顺序的是分配问题(如把9本书分配给3个人)C(9,3)*c(6,3)*c(3,3)=1680种

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-1-31 19:43 | 显示全部楼层
天地一相 发表于 2024-1-31 19:32
你的例子,不管位置咋放,都只是一种。我看有人回复说280种,我看截图好像是对的。就是什么呢,如果把一 ...

你没细看。我举例的组合,第一个组合和后面两个组合不是一回事。不是只换了下顺序,数字除了123一样,另外两组是不一样的。

你补充描述的,一个组合比一个组合大,那就更不好理解了,874,235,961. 那就是不符合?因为235明显比874小?

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-1-31 19:47 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
yjh_27 发表于 2024-1-31 19:41
组间无顺序的是分组问题,有顺序的是分配问题(如把9本书分配给3个人)C(9,3)*c(6,3)*c(3,3)=1680种

哦,我说怎么感觉理解起来怪的很。

所以是分组得到1680种结果,但是其中有很多是重复的。也就是 123,456,789 ; 456,789,123  ,  123,789,456  。。。。这样的6个结果,属于同一个结果。

所以应该是  1680/ 6 = 280 中结果  ?   

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-1-31 19:49 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
micch 发表于 2024-1-31 19:23
123,456,789,第一组出现过123,那么如果不允许123出现在第二组和第三组; 457,123,689  或者  689,123,457 ...

再仔细看了下,457,123,689  或者  689,123,457  这个例子,不容许这样放,只能 123,457,689   这样,一组比一组大,从小到大

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-1-31 20:05 | 显示全部楼层
yjh_27 发表于 2024-1-31 19:03
9元素均分3组,280种分法

不知道可否有循环写法,能从你的第一行逐步演变到最后一行的样子。

TA的精华主题

TA的得分主题

发表于 2024-1-31 20:16 来自手机 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
猜一个 A93*A63*A33/A33 见笑 我是学渣

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-1-31 20:31 | 显示全部楼层
天地一相 发表于 2024-1-31 19:49
再仔细看了下,457,123,689  或者  689,123,457  这个例子,不容许这样放,只能 123,457,689   这样,一 ...



如果不考虑算法,用更快的速度解决,纯循环穷举的话,先9选3,然后剩余的6选3,得到3个数字一组。这样排列一下1680种结果,做一下去重,得到280种。

但是这个逻辑不合理,大量无效运算。

之前香川老师有个,一组数字分组排列的帖子,但是忘记在哪里,好像是 2,3,2分组排列,还是可以指定数量分组排列。

评分

1

查看全部评分

头像被屏蔽

TA的精华主题

TA的得分主题

发表于 2024-1-31 20:38 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
提示: 作者被禁止或删除 内容自动屏蔽
头像被屏蔽

TA的精华主题

TA的得分主题

发表于 2024-1-31 20:39 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-1-31 20:43 | 显示全部楼层
micch 发表于 2024-1-31 20:31
如果不考虑算法,用更快的速度解决,纯循环穷举的话,先9选3,然后剩余的6选3,得到3个数字一组。这 ...

所以我琢磨是否可以使用一种循环写法,从123.456.789 开始逐个演变至 189,267,345 ,我不是要找有多少种组合,我是要找实现变化的写法
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-17 21:41 , Processed in 0.050281 second(s), 18 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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