【发布时间】:2011-10-24 20:57:57
【问题描述】:
我有点想不出如何实现一个小项目。
我有什么:
- 用户列表,包括他们的 ID 和姓名
我想要达到的目标:
- 我想将此列表中的每个用户与另一个用户组合,这样没有用户被分配给多个用户,也没有用户被分配给她自己。
- 组合必须是随机的,并且必须考虑过去的组合
到目前为止我的想法:
- 我有这些信息:
用户(A,B,C,D)(实际用户数在 50 到 400 之间)
可能的组合:(A-B,A-C,A-D,B-C,B-D,C-D)
随机抽奖(1):(A-B, C-D)
随机抽奖(2):(A-D, B-C)
随机抽奖(3):(A-C,B-D)
- 我能够使用用户表与自身的连接来获得所有可能的组合。
- 我想我可以通过将抽签存储在单独的表格中来考虑以前的抽签,并将可能的组合限制为不在此特殊表格中的组合。
我不能做什么:
- 我不知道如何从可能的组合列表中随机抽取,这样每个用户每次抽奖只属于一个组合的一部分(例如,同一抽奖中不允许 A-B、A-D)
- 我尝试为此使用 sql 或一点 php(可能是 javascript)
感谢您的帮助。
【问题讨论】:
标签: javascript sql random combinations