首页
新闻
论坛
群组
Blog
文档
下载
读书
Tag
网摘
搜索
.NET
Java
游戏
视频
人才
外包
培训
数据库
书店
程序员
欢迎您:
游客
| 退出
| 登录
注册
帮助
我的帖子
我参与的帖子
我的空间
我的网摘
CSDN
CSDN社区
.NET技术
非技术区
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分
生成帖子
置顶
推荐(加精)
取消推荐(加精)
锁定帖子
移动帖子
取消引用
结贴去...
管理菜单
页面风格切换
标准风格
老版本论坛
问个问题,实现网上挖宝的程序,仿照幸运52的形式
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:16:08
楼主
是这样的需求。
挖宝的解释:就是用户可以在一个页面点击广告牌后根据系统的设计可以提示中奖或者没有中奖(类似幸运52的那种活动)
总体:开发一个系统,用户可以看到本期挖宝活动的奖品数量和已经挖出来的奖品和剩下的奖品
1.用户点击广告后根据一个比较公平的算法计算出有没有中奖
2.后台可以管理挖宝的活动期数、宝贝数量、广告牌的管理。
3.算法尽量公平公正,奖品最好能平均分配(例:一期活动5天,共有10个奖品,那么中奖的概率最好是每天都能中两个奖品)
可能表述不是很清楚,随时更正
最好能给个详细的算法说明或者实现方法 或者有更好的建议
谢谢了
问题点数:
100
回复次数:
35
显示所有回复
显示星级回复
显示楼主回复
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
sjm2003
社会的败笔
等级:
发表于:
2008-02-19 14:19:48
1
楼 得分:
0
那随机算了,说不定奖品一个都拿不走 ^_^
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:21:37
2
楼 得分:
0
首先要定义活动的期数,打算每期中奖的个数。
我们假设每周m次该活动,每次中将n个,每次挖宝x次,广告牌x个。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:24:21
3
楼 得分:
0
后台以活动的期次为唯一标识。
包括活动的期次、本期的中将个数,本期的挖宝次数,广告牌个数,已挖个数,已中奖个数,中奖人id
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:26:35
4
楼 得分:
0
每挖一次宝,当前的期次对应的已挖个数长1,默认为0;
中奖率=本期的中将个数/本期的挖宝次数;(常数)
剩余挖宝次数=本期的挖宝次数-已挖个数;
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:29:46
5
楼 得分:
0
假设有10个广告牌,名字分别为:m1、m2、m3……m9、m10。
我们采用随机分配,给他们赋值0、0、0、0、0、0、0、0、1、1
分配后进行挖宝。
如果你的广告牌下是1,表示你中奖;
如果你的广告牌下是0,表示你非中奖;
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:31:13
6
楼 得分:
0
这个活动有个不确定因素是这样的:1.任何人打开这个页面都可以随便的挖宝 。 2.没有点击次数的限制
所以 这个概率从哪里来算是个问题,想用时间来计算这个概率,不过没想出很好的点
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:31:42
7
楼 得分:
0
挖宝之前有些参数是需要设置的,否则就很难控制平均。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:32:20
8
楼 得分:
0
这个东西有多少人来参加多少点击量都是未知的,这点很郁闷,没有很好的概率产生的地方
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:32:48
9
楼 得分:
0
就像投票一样,只能让他投一票。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:36:45
10
楼 得分:
0
假如我们把中奖率定为1/100
我们可以这样:
1、有人上网站后记录他的IP,只能让他点一次,然后就让挖宝button对他失效。
2、我们例如有5个奖品,500个挖宝的机会。
3、当累积点到500次后,提示今天的挖宝活动已经结束。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:37:07
11
楼 得分:
0
补充几点
1.匿名“挖宝”,挖中了填写个人信息后领奖,直接公布。
2.只有活动的每期时间和奖品数量是已知的,其他(参加人数、点击量)都不确定
3.最好能平均分配奖品(根据时间来平均分配中奖概率)
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
blestcc
我穿墙而过
等级:
发表于:
2008-02-19 14:38:16
12
楼 得分:
0
在生成活动时(也就是排列广告牌时)就确定下来哪个广告有奖哪个广告没奖,随机分配既可.
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:39:14
13
楼 得分:
0
旁边提示:
今天的中奖名单。
剩余的宝贝个数。
-----------
当有人中奖后,提示他填写中奖信息。然后将他/她的名字写在左侧。
一般当宝贝个数为0后就不会有人再点了。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:39:14
14
楼 得分:
0
to:maco_wang
挖宝的机会是不能限制的,限制ip也不显示,我们这里是pppoe的上网方式,每次拨号的ip都不相同。不好限制
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:41:25
15
楼 得分:
0
旁边提示:
今天的中奖名单。
剩余的宝贝个数。
-----------
当有人中奖后,提示他填写中奖信息。然后将他/她的名字写在左侧。
一般当宝贝个数为0后就不会有人再点了。
-----------------------------------------------
所以最好能根据活动的时间来控制中奖的数量,在实际的抽奖活动中好像也是这样的,活动不会让开始几天把所有的奖品都抓走的,也就是人为的最好能干预
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:41:48
16
楼 得分:
0
可不可以让他先注册,登陆以后再挖宝,这样就可以限制了。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:44:06
17
楼 得分:
0
可不可以让他先注册,登陆以后再挖宝,这样就可以限制了。
-----------------------------------------------------
不想限制这个,对用户门槛提高了,影响活动,
主要的目的是让商家参加进来,提供奖品、放广告牌
,对用户不像
加太多的限制
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:45:43
18
楼 得分:
0
我觉得这个的问题就是怎么能通过活动的时间来计算出一个中奖的概率来,实际的抽奖活动是用奖券来算,这里用时间,
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:48:23
19
楼 得分:
0
那就只能是这样了:
你的用户是不确定的,而且他可以无限的点。
那就只能定义死时间。
假如你今天打算方法10个奖品
在今天的时间里随机选10个时间点。
以分钟为单位。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:50:19
20
楼 得分:
0
随机选取10个时间点:
如:
01:12:23
03:23:33
06:23:09
等
那就是说到01:12:23时间后,第一个点的人让他中奖。
然后依次。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:51:35
21
楼 得分:
0
随机选取10个时间点,但要求必须有一个是23:00:00以后的。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 14:52:37
22
楼 得分:
0
如果4点以前没有人点,那4点的时候,这个人可以连中两个奖。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 14:57:02
23
楼 得分:
0
这样会不会出现这样的问题,如果点击人数很多的时候,一个奖品同时让两个人给点上,
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 15:09:24
24
楼 得分:
0
程序的执行总有一个先后的顺序
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 15:11:43
25
楼 得分:
0
如果时间是02:00:00
有两个人在02:00:56时间同时点。
在这个时间只开放了一个宝,第一个到的人添加中奖信息,然后关闭中奖。
第二个就是没宝了。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 15:14:20
26
楼 得分:
0
应该没有问题。看看大家的看法!
//你可以用测试工具测试一下。
//电脑应该可以分得清先后。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-19 15:20:38
27
楼 得分:
0
假如咱两个几乎是同时挖宝,你比我早一个毫秒级的时间单位,你肯定会提示中奖,可能你中奖的过程还没有处理完毕,
没有从总奖品中去掉你刚刚中的奖,我就点了,这样系统可能也会提示我也中奖吧
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
maco_wang
哈尔滨☆叶子
等级:
发表于:
2008-02-19 15:39:14
28
楼 得分:
0
计算机处理的过程时间不仅仅是以毫秒为单位。
我们可以这样考虑,当第一个人的传到后,会进行中奖处理,当中奖处理完后,才提示你中奖了。当第二个传到时,因为已经再处理中奖信息了,所以他就是非中奖的了。就好比一个队列,单通道的,当一个人中奖后,第二个人其实也中奖了,但是他没有被提示中奖。
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
45Ter
方便面
等级:
发表于:
2008-02-20 11:18:36
29
楼 得分:
0
楼主做好了,发个链接出来,我也去挖挖!呵呵!
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
chengqscjh
成长
等级:
发表于:
2008-02-20 12:00:32
30
楼 得分:
0
1.根据当天的点击数分别指定中奖率(概率最好是每天都能中两个奖品)
2.先注册,登陆以后再挖宝
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-20 15:27:26
31
楼 得分:
0
1.根据当天的点击数分别指定中奖率(概率最好是每天都能中两个奖品)
2.先注册,登陆以后再挖宝
=----------------------
没发确定点击数
还是不想先注册
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zelloss
不能成为机器!
等级:
发表于:
2008-02-21 14:17:46
32
楼 得分:
0
需求本身有很严重的缺陷!!!!
不限制的话,那你的广告牌数就没法定,比如你定N个,那么我一个人就可以都点过来
如果是幸运52那种方式,必须在设置广告牌的时候就已经确定了这个牌子后面的奖品,不能用随机数来做!
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zelloss
不能成为机器!
等级:
发表于:
2008-02-21 14:19:04
33
楼 得分:
0
需求有严重的问题!!
如果你设置了广告牌的个数,那么我一个人进去就可以点了所有的,而如果是幸运52那种模式
那你的广告牌设置时,就已经决定了它后面的奖品,那么这个人就拿到了奖品
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zelloss
不能成为机器!
等级:
发表于:
2008-02-21 14:32:42
34
楼 得分:
0
建议整理一下思路
比如,我每天确定要发两个奖品,然后设置1000个广告牌(假设),时间为早7点到晚9点,那么在这个时间段里,任何人都可能点击这1000,那么奖品就肯定发出去了。可能连10分钟都用不了,奖品就发出去了。
如果用中奖率来做,那么有可能在这个时间段里不会有人中奖,但也有可能前两次点击就拿走了奖品,这就是未知的了
修改
删除
举报
引用
回复
加为好友
发送私信
在线聊天
zbwangchao
等级:
发表于:
2008-02-22 09:27:31
35
楼 得分:
0
只是用幸运52那种显示样式,是要从广告牌提交到一个处理程序里,从哪个提交都没有限制,而且广告牌的数量应该不多
修改
删除
举报
引用
回复
将帖子提前
放进我的网摘
推荐给好友
我要提问
帖子加分