| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 794 人关注过本帖
标题:[题目]统一新产品绿茶算法
只看楼主 加入收藏
pgy
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:C
等 级:小飞侠
威 望:8
帖 子:1248
专家分:2329
注 册:2009-9-23
结帖率:100%
收藏
 问题点数:0 回复次数:7 
[题目]统一新产品绿茶算法
统一新产品绿茶,3元\瓶,中一等奖5000元(税后80%)概率为0.0001%,中二等奖2000元(税后80%)概率为0.001%,中三等奖“再来一瓶”(不扣税)概率为30%,且中奖的绿茶叶是该新产品绿茶(所以要再计算上述概率),如果中了现金奖,所得现金继续购买该类产品。
写一个程序,输入购买款,输出理论购买数量。
比如输入购买款为3万,如果不算中奖率是1万瓶,但现在有中奖率的因素存在,怎么算出实际购买数量?
(附带分析和注释!!!)

搜索更多相关主题的帖子: 算法 绿茶 
2009-10-11 14:22
ouyangouyang
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:273
专家分:579
注 册:2009-10-8
收藏
得分:0 
大虾们顶起啊,我也想看看答案

多少恨, 昨夜梦魂中。 还似旧时游上苑, 车如流水马如龙; 花月正春风!
2009-10-12 15:39
豆客编程
Rank: 1
来 自:中国陕西
等 级:新手上路
帖 子:13
专家分:3
注 册:2009-9-19
收藏
得分:0 
期待答案中
2009-10-12 17:01
myang
Rank: 4
等 级:业余侠客
威 望:1
帖 子:88
专家分:208
注 册:2009-8-28
收藏
得分:0 
三楼是科大的吧!
校友!

QQ群:214453442
2009-10-12 21:26
xiaoqing8731
Rank: 2
等 级:论坛游民
帖 子:23
专家分:32
注 册:2009-10-9
收藏
得分:0 
一天时间  我想想
2009-10-12 21:36
xiaoqing8731
Rank: 2
等 级:论坛游民
帖 子:23
专家分:32
注 册:2009-10-9
收藏
得分:0 
#include"stdio.h"
#define Price 3
void main()
{int b=0,ffprize,ssprize,ttprize,sum=0,c,fffprize,sssprize,tttprize,Money=30000;
double  fprize,sprize,tprize;
while((b+Money)/Price)
{sum=sum+Money/Price;
c=(int)(b+Money)/Price;
b=(b+Money)%Price;
fprize=(b+Money)/Price*0.0001;
sprize=(b+Money)/Price*0.001;
tprize=(b+Money)/Price*0.3;
ffprize=(int)fprize;
ssprize=(int)sprize;
ttprize=(int)tprize;
fffprize=ffprize*4000;
sssprize=ssprize*1600;
tttprize=ttprize*3;
Money=fffprize+sssprize+tttprize;
}
printf("sum is %d\n",sum);
}
其实问题很简单   就是钱变为绿茶  一部分绿茶变为钱   再用钱买绿茶  直到钱不够买一瓶时
我用的变量比较多  主要是为了类型转换  实际问题中 中一等奖的期望若<1,则记为零。其他的也是  我把中的再来一瓶换成是3元,并不影响结果,因为这一部分总可被三整除。sum是统计买的瓶数。
其他的自己看吧  这个好懂  问题看起来比较复杂  仔细分析一下也不是太难。就这些。
2009-10-13 10:06
myang
Rank: 4
等 级:业余侠客
威 望:1
帖 子:88
专家分:208
注 册:2009-8-28
收藏
得分:0 
回复 5楼 xiaoqing8731
你考虑中奖的随机性了吗!
那天运气好说不定你买的绿茶全中5000圆了!

QQ群:214453442
2009-10-14 00:11
myang
Rank: 4
等 级:业余侠客
威 望:1
帖 子:88
专家分:208
注 册:2009-8-28
收藏
得分:0 
我用MATLAB写的!MATLAB里面的随机函数好调用写!
第一部分是中将函数!
function[d h s]=zhongjiang(p)
y=rand(1,1000000);
x=rand(1,p);
h=0;
for i=1:1000000;
for k=1:p;
    if y(i)==x(k);
        h=h+1;
    end
end
end
y=rand(1,100000);
x=rand(1,p-h);
d=0;
for i=1:100000;
for k=1:(p-h);
    if y(i)==x(k);
        d=d+1;
    end
end
end
y=rand(1,4);
x=rand(1,p-h-d);
s=0;
for i=1:4;
for k=1:(p-h-d);
    if y(i)==x(k);
        s=s+1;
    end
end
end
第二部分是
function[]=qianshu(m)
g=m/3;
[h d s]=zhongjiang(g);
m1=h*5000+d*2000;
g=m1/3+s;
g1=m1/3;
x=0;
while g1
    zhongjiang(g1)
    m1=h*5000+d*2000;
    g1=m1/3;
    x=x+s;
end
zh=g+x;
连夜赶的
还有很多漏洞
程序不够优化运行次数太多
不足之处多多指教!

QQ群:214453442
2009-10-14 01:55
快速回复:[题目]统一新产品绿茶算法
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024628 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved