Foxtable(狐表)用户栏目专家坐堂 → 找出每行3个以上的重复数字


  共有2733人关注过本帖树形打印复制链接

主题:找出每行3个以上的重复数字

帅哥哟,离线,有人找我吗?
sloyy
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2193 积分:13914 威望:0 精华:2 注册:2012/2/25 10:59:00
找出每行3个以上的重复数字  发帖心情 Post By:2024/8/4 23:56:00 [只看该作者]

图片点击可在新窗口打开查看
如图:有18行数据,用什么办法能够迅速找出每行3个以上的重复数字?

 回到顶部
帅哥,在线噢!
y2287958
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4773 积分:34673 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2024/8/5 8:02:00 [只看该作者]

没看明白


 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111393 积分:567029 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/8/5 8:51:00 [只看该作者]

6选3的不重复组合个数是120种。33选3的不重复组合个数是5456种。没有快速的方法,只能所有组合都逐一搜索一遍

 回到顶部
帅哥哟,离线,有人找我吗?
sloyy
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2193 积分:13914 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2024/8/5 9:27:00 [只看该作者]

我以为有特殊的算法可以缩减工作量

 回到顶部
帅哥,在线噢!
y2287958
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4773 积分:34673 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2024/8/5 9:32:00 [只看该作者]

说说规则,还是看不明白


 回到顶部
帅哥哟,离线,有人找我吗?
sloyy
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2193 积分:13914 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2024/8/5 16:23:00 [只看该作者]

就是在一行6个数字里面选3到4个数字,与其他行对比,看是否有重复,如果有重复就标出这3个数字

 回到顶部
帅哥,在线噢!
y2287958
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4773 积分:34673 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2024/8/5 16:31:00 [只看该作者]

与其他行对比,是怎样的对比


 回到顶部
帅哥哟,离线,有人找我吗?
sloyy
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2193 积分:13914 威望:0 精华:2 注册:2012/2/25 10:59:00
  发帖心情 Post By:2024/8/5 21:53:00 [只看该作者]

看其他行,是否有这3个数字 

 回到顶部
帅哥,在线噢!
y2287958
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4773 积分:34673 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2024/8/5 23:27:00 [只看该作者]

也就是其他行所有列,不包括当前行呗。明天上班看看,有办法。

 回到顶部
帅哥,在线噢!
y2287958
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4773 积分:34673 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2024/8/6 7:54:00 [只看该作者]

Dim 列名集 As New List(Of String)({"第一列", "第二列", "第三列", "第四列", "第五列"})
Dim 集合 As New List(Of Integer)(Tables("表A10").rows.Select(Function(行) CInt(行("第一列"))))
For Each 列名 As String In 列名集.skip(1)
    集合.AddRange(Tables("表A10").rows.Select(Function(行) CInt(行(列名))))
Next
集合 = 集合.GroupBy(Function(元素) 元素).where(Function(元素) 元素.count > 3).Select(Function(元素) 元素.key).tolist
For Each 行 As Row In Tables("表A10").rows
    行("第六列") = String.Join(" ", 集合.Intersect(列名集.select(Function(列名) CInt(行(列名)))))
    Output.Show(String.Join(" ", 集合.Intersect(列名集.select(Function(列名) CInt(行(列名))))))
Next

 回到顶部
总数 18 1 2 下一页