k*z 发帖数: 4704 | 1 赌场有一个赌博游戏,入场费是1.7M, 给你筹码5M,最多一次可以赌0.75M, 赔率是1:1
,游戏结束时
,多于5M的筹码你可以兑现,5M要交回赌场。 你赢钱的概率是P,输钱
的概率是Q,和局的概率是R,R<<
, R=0,试问 你应不应该玩这个游戏,需要解释为什么?如果你觉得你应该玩,你的期
望是多少。赌场应该怎么改进这个游戏规则,让你的期望小于0?
我们的面试题。。。。 |
a****g 发帖数: 8131 | 2 if you gain, you can take some money away
if you lose, you don't get any penalty according to your description
then why not play?
:1
505
【在 k*z 的大作中提到】 : 赌场有一个赌博游戏,入场费是1.7M, 给你筹码5M,最多一次可以赌0.75M, 赔率是1:1 : ,游戏结束时 : ,多于5M的筹码你可以兑现,5M要交回赌场。 你赢钱的概率是P,输钱 : 的概率是Q,和局的概率是R,R<<: , R=0,试问 你应不应该玩这个游戏,需要解释为什么?如果你觉得你应该玩,你的期 : 望是多少。赌场应该怎么改进这个游戏规则,让你的期望小于0? : 我们的面试题。。。。
|
l******n 发帖数: 9344 | 3 那个赌场的面试题?我要去
求内推
:1
505
【在 k*z 的大作中提到】 : 赌场有一个赌博游戏,入场费是1.7M, 给你筹码5M,最多一次可以赌0.75M, 赔率是1:1 : ,游戏结束时 : ,多于5M的筹码你可以兑现,5M要交回赌场。 你赢钱的概率是P,输钱 : 的概率是Q,和局的概率是R,R<<: , R=0,试问 你应不应该玩这个游戏,需要解释为什么?如果你觉得你应该玩,你的期 : 望是多少。赌场应该怎么改进这个游戏规则,让你的期望小于0? : 我们的面试题。。。。
|
D*G 发帖数: 471 | 4 入场费是自己出还是在5M里面扣啊?
【在 a****g 的大作中提到】 : if you gain, you can take some money away : if you lose, you don't get any penalty according to your description : then why not play? : : :1 : 505
|
k*z 发帖数: 4704 | 5 入场费当然是要先付,
这个问题就是问你是不是要玩这个游戏,如果你的赢钱期望大于0,当然要玩了。 |
l******n 发帖数: 9344 | 6 即使赢得概率是0.5,手里筹码就是martingale,期望都是开始的5M,也就是你得gain是-1
.7M;现在P
没有理由玩
【在 k*z 的大作中提到】 : 入场费当然是要先付, : 这个问题就是问你是不是要玩这个游戏,如果你的赢钱期望大于0,当然要玩了。
|
k*z 发帖数: 4704 | 7 你的入场费是1.7M,出场必须手里有6.7M才能break even. 6.7M以上才能叫赢钱。你的
意思是 没有人会入场么?呵呵,你被fire了。 |
k*******a 发帖数: 772 | 8 刚才simulate了一下:
如果手里筹码<=0或者>=10 那么停止
这样 expected gain = 2.5 > 1.7
如果10改为15, 那么 expected gain = 3.5
如果10改为20, 那么expected gain = 2.1
也就是说, 用这种策略,还是很容易赢钱的, 比如筹码到15就停止,那么能赢3.5-1.
7=1.8
最佳值应该会更多些 |
a****g 发帖数: 8131 | 9 能不能把你的code贴一下
或是稍微具体结识一下如何设定的参数
1.
【在 k*******a 的大作中提到】 : 刚才simulate了一下: : 如果手里筹码<=0或者>=10 那么停止 : 这样 expected gain = 2.5 > 1.7 : 如果10改为15, 那么 expected gain = 3.5 : 如果10改为20, 那么expected gain = 2.1 : 也就是说, 用这种策略,还是很容易赢钱的, 比如筹码到15就停止,那么能赢3.5-1. : 7=1.8 : 最佳值应该会更多些
|
k*******a 发帖数: 772 | 10 嗯, code 只是考虑比较简单的情形,不过大概意思差不多
sp <- 15
nbet <- 10000
aa <- function(x) {
win <- rbinom(nbet, 1, .495)
win <- ifelse(win, 1, -1)
winm <- 5 + cumsum(win)*.75
i0 <- which(winm<=0)[1]
i1 <- which(winm>=sp)[1]
i0 <- ifelse(is.na(i0), Inf, i0)
i1 <- ifelse(is.na(i1), Inf, i1)
if (i0==Inf & i1==Inf) return(NA) else return(ifelse(i0
}
b <- sapply(1:5000, aa)
mean(b)
【在 a****g 的大作中提到】 : 能不能把你的code贴一下 : 或是稍微具体结识一下如何设定的参数 : : 1.
|
|
|
k*z 发帖数: 4704 | 11 楼上的可以被暂时录取了。希望深思熟虑后给出期望。就完美了。我们再找可以写VBA
的人。哈哈。
code有问题,还要接着改进。 |
D******n 发帖数: 2836 | 12 不一定。给你吃一个药,你可能会死,也可能多活几年,期望值是多活一年,不见得你
就会去吃。
【在 k*z 的大作中提到】 : 入场费当然是要先付, : 这个问题就是问你是不是要玩这个游戏,如果你的赢钱期望大于0,当然要玩了。
|
I*****a 发帖数: 5425 | 13 5P - 1.7(1-R) ?
赌场策略包括,降低P,增加入场费,设R=0,降低入场筹码。
:1
505
【在 k*z 的大作中提到】 : 赌场有一个赌博游戏,入场费是1.7M, 给你筹码5M,最多一次可以赌0.75M, 赔率是1:1 : ,游戏结束时 : ,多于5M的筹码你可以兑现,5M要交回赌场。 你赢钱的概率是P,输钱 : 的概率是Q,和局的概率是R,R<<: , R=0,试问 你应不应该玩这个游戏,需要解释为什么?如果你觉得你应该玩,你的期 : 望是多少。赌场应该怎么改进这个游戏规则,让你的期望小于0? : 我们的面试题。。。。
|
I*****a 发帖数: 5425 | 14 还有修改赔率。
【在 I*****a 的大作中提到】 : 5P - 1.7(1-R) ? : 赌场策略包括,降低P,增加入场费,设R=0,降低入场筹码。 : : :1 : 505
|
b****d 发帖数: 1311 | 15 简单起见,不妨设P=Q=0.5, R=0. 设 E(n)为你手上有n M时赌博的最佳期望值。则
E(5) 不小于 0.5*E(4.25)+0.5*E(5.75)。同理 E(5) 不小于 0.5*E(0)+0.5*E(10)
=0.5*E(10) 不小于 0.5*(10-5-1.7)=1.75。也就是说,在此情况下,你的期望至少是
1.75 M。
:1
505
【在 k*z 的大作中提到】 : 赌场有一个赌博游戏,入场费是1.7M, 给你筹码5M,最多一次可以赌0.75M, 赔率是1:1 : ,游戏结束时 : ,多于5M的筹码你可以兑现,5M要交回赌场。 你赢钱的概率是P,输钱 : 的概率是Q,和局的概率是R,R<<: , R=0,试问 你应不应该玩这个游戏,需要解释为什么?如果你觉得你应该玩,你的期 : 望是多少。赌场应该怎么改进这个游戏规则,让你的期望小于0? : 我们的面试题。。。。
|
w*******9 发帖数: 1433 | 16 You need a refresh on the integrability condition on the stopping time.
-1
【在 l******n 的大作中提到】 : 即使赢得概率是0.5,手里筹码就是martingale,期望都是开始的5M,也就是你得gain是-1 : .7M;现在P: 没有理由玩
|
l******n 发帖数: 9344 | 17 是呀,看到这种问题现在只会simulate啦
【在 w*******9 的大作中提到】 : You need a refresh on the integrability condition on the stopping time. : : -1
|
l******n 发帖数: 9344 | 18 code有个问题,你最后lose的时候,你return 0,那5M的筹码你就不用还了吗?
【在 k*******a 的大作中提到】 : 嗯, code 只是考虑比较简单的情形,不过大概意思差不多 : sp <- 15 : nbet <- 10000 : aa <- function(x) { : win <- rbinom(nbet, 1, .495) : win <- ifelse(win, 1, -1) : winm <- 5 + cumsum(win)*.75 : i0 <- which(winm<=0)[1] : i1 <- which(winm>=sp)[1] : i0 <- ifelse(is.na(i0), Inf, i0)
|
w*******9 发帖数: 1433 | 19 美中不足: 忽略操作性细节,应该是0.5*(10-5-1.7)-0.5*1.7=1.65-0.85=0.8
就是说你先到0的概率和先到10的概率是一样大的,先到10,你就赢10-5-1.7;先到0,
你输1.7.
是
【在 b****d 的大作中提到】 : 简单起见,不妨设P=Q=0.5, R=0. 设 E(n)为你手上有n M时赌博的最佳期望值。则 : E(5) 不小于 0.5*E(4.25)+0.5*E(5.75)。同理 E(5) 不小于 0.5*E(0)+0.5*E(10) : =0.5*E(10) 不小于 0.5*(10-5-1.7)=1.75。也就是说,在此情况下,你的期望至少是 : 1.75 M。 : : :1 : 505
|
k*z 发帖数: 4704 | 20 那么其他的值呢?比如说你的期望是赢20走。
另外输了5M是因为你给了1.7M,所以输掉就不用还了。
【在 w*******9 的大作中提到】 : 美中不足: 忽略操作性细节,应该是0.5*(10-5-1.7)-0.5*1.7=1.65-0.85=0.8 : 就是说你先到0的概率和先到10的概率是一样大的,先到10,你就赢10-5-1.7;先到0, : 你输1.7. : : 是
|
|
|
w*******9 发帖数: 1433 | 21 20也好搞,0.5*0.5*(20-5-1.7)-0.85.但是一般的不好搞。你这是个“脑经急转弯”
吗,lol
【在 k*z 的大作中提到】 : 那么其他的值呢?比如说你的期望是赢20走。 : 另外输了5M是因为你给了1.7M,所以输掉就不用还了。
|
b****d 发帖数: 1311 | 22 其实期望值可以按此方法延伸算出来。
对任何正整数 n, E(5) 不小于 (1/2^n)*E(5*2^n)+(1-1/2^n)*E(0)
不小于 (1/2^n)*(5*2^n-5-1.7)-(1-1/2^n)*1.7 = 5-(1/2^n)*5-1.7。
令 n趋向无穷,E(5)不小于3.3 M。
然而有个简单方法:如果一开始你多付3.3M,也就是付5M入场费。则相当于你用你
的5M在进行赌博。不论用何策略,每一步赌博的期望值都是0.所以E(5)就是3.3 M。
【在 w*******9 的大作中提到】 : 20也好搞,0.5*0.5*(20-5-1.7)-0.85.但是一般的不好搞。你这是个“脑经急转弯” : 吗,lol
|
k*******a 发帖数: 772 | 23 是啊,的确是这个问题,我用SAS做了下,比较容易correct这个问题,赌注为0.75和手
上有的钱的最小值
%let sp = 15;
%let nrep = 3000;
data a;
do i = 1 to &nrep;
total = 5;
do while (total > 0 and total < &sp);
total = total + (ranbin(123, 1, .495)-0.5)*2*min(.75, total);
end;
gain = max(0, total - 5);
output;
end;
run;
proc means data = a;
var gain;
run;
【在 l******n 的大作中提到】 : code有个问题,你最后lose的时候,你return 0,那5M的筹码你就不用还了吗?
|
n*****u 发帖数: 2201 | 24 如果是脑筋急转弯的话,那把这个想象成2-way random walk, 因为输得概率略大,所
以理论上最终state 还是偏向小于起始的值,所以还是输阿,应该不玩
如果深刻考虑的话,这是一个stochastic process, transit prob matrix 很清楚,小
于5M 到 0.5有6 state, 只要计算出这些小于5M状态的probility之和是不是大于0.5. 大
于就不完了。最终各个state 的prob 和你赢多少收手以及一共完多少次觉定,这个在
coding 的时候应该很好改。 |
l*********s 发帖数: 5409 | 25 re, 烂大街的quant面试题了。
. 大
【在 n*****u 的大作中提到】 : 如果是脑筋急转弯的话,那把这个想象成2-way random walk, 因为输得概率略大,所 : 以理论上最终state 还是偏向小于起始的值,所以还是输阿,应该不玩 : 如果深刻考虑的话,这是一个stochastic process, transit prob matrix 很清楚,小 : 于5M 到 0.5有6 state, 只要计算出这些小于5M状态的probility之和是不是大于0.5. 大 : 于就不完了。最终各个state 的prob 和你赢多少收手以及一共完多少次觉定,这个在 : coding 的时候应该很好改。
|