“蔚来杯“2022牛客暑期多校训练营1 I题解

I-Chiitoitsu

题目大意:
只有一个玩家。从一副麻将(136张牌)里摸了13张牌,每种牌型最多有两张,要组成七对子,求接下来期望摸的牌数。

思路:
一道期望dp问题。
因为初始时每种牌最多摸到两张,已经组成对子的牌就不用管了,只要将手中的单牌凑成对子就行。当摸到一张手中没有的牌时,扔掉这张牌和扔掉手中的单牌是一样的,对期望没有影响,因为两种牌在牌堆里的剩余牌数都是3张。
在摸到一张牌时有两种情况,要么可以和手中的单牌组成对子,要么不能,如果不能的话就还要接着摸。
那么状态转移方式就是 fcur = 1(摸了一张牌) + p(组不成对子的概率) * fnext(下一个状态)
在这里插入图片描述
AC代码:

#include <bits/stdc++.h>
#define mem(a, v) memset(a, v, sizeof(a))
using namespace std;

const long long mod = 1e9 + 7;

long long ksm(long long base, long long power)
{
   
    long long result = 1;
    base %= mod;
    while (power)
    {
   
        
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值