随机抽取

whowho 2003-03-24 12:44:03
我要在几百人中随机抽取几个人,保证在一年内每人都抽到,但又要保证已经抽到的人在规定时间内不出现。请高手给个算法,高分感谢!!!!!!
...全文
67 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lonelylight 2003-03-25
  • 打赏
  • 举报
回复
就是乱序,有很好的办法。
Magusflp008 2003-03-25
  • 打赏
  • 举报
回复
对了: 优先考虑flag=1的字段 不好操作
可以:
产生一个 随机百分数 用于在 flag=0 的记录中抽取 一定数量的记录
如: 如果产生的 随机百分数=20% 则 在flag=0的记录中抽取 20% 的记录

如果这样还存在 没抽取的记录,那只有在一年的最后几天指定了~!~
Magusflp008 2003-03-25
  • 打赏
  • 举报
回复
利用 数据库 增加一个字段--抽取日期,记录该人被抽到的日期,每天比较,
如果当天日期与该字段之差 大于 规定的数,则清空

再增加一个字段--flag,记录是否被抽取过,当记录被抽取时,置1

随机抽取前,判断抽取日期字段是否为空,
如果为空,则不参加随机抽取
优先考虑flag=1的字段

2,495

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧