BZOJ 2963 麻将 DFS+动态规划

题目大意:给定一副不全的麻将,从中摸取 14 张,求和牌的概率,牌型包括一般牌型/七対子/国士無双

这傻逼题我从昨天中午写到现在……

答案是分数形式,我们求出和牌的方案数和总方案数 C14n ,约分一下即可
比较好的一件事情就是 C14n4.251018 ,刚好不爆long long

由于和牌牌型分为三类,所以一般的思路是分别计算三类牌型的概率,然后加起来,但是这样不对,因为一般牌型和七対子是有交集的,叫做二盃口……

一盃口:1番门前役,牌型中存在两幅同色同数的顺子,称作一盃口
例:1m 1m 2m 2m 3m 3m 5m 5m 5m 7m 7m 7m 9m 9m
牌型中的1m 1m 2m 2m 3m 3m即为一盃口

二盃口:3番门前役,牌型中存在两幅一盃口,称作二盃口
例:1m 1m 2m 2m 3m 3m 5m 5m 6m 6m 7m 7m 9m 9m

容易发现如果二盃口中没有重叠(即不存在某张牌出现了四张,像1m 1m 2m 2m 3m 3m 3m 3m 4m 4m 5m 5m 7m 7m这样的形式)那么二盃口既满足七対子的形式又满足一般牌型的形式,要从答案中减去

故答案=国士無双+七対子+一般牌型-不重叠的二盃口

国士無双:DP
七対子:DP
二盃口:DP/爆枚,如果用DP的话注意同种牌型的不同解释方式,例如1m 1m 2m 2m 3m 3m 4m 4m 5m 5m 6m 6m 7m 7m有三种解释方式,但是只应被统计一次

然后就是这该死的一般牌型了……

容易想到朴素的DP: fi,j,k,cnt1,cnt2 表示当前在第 i 张牌,凑成了 j 组面子,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值