首页 > 其他分享 >abc--280--E

abc--280--E

时间:2022-12-04 11:45:47浏览次数:36  
标签:abc -- int ch read 280 100

题目大意

一个人有n条命,你有p%的概率一次打它两条命,有(100-p)%的概率一次打他一条命
求你打死它需要的次数的期望值

思路

其实也就和走台阶的那个题目是一样的,用dp写就行了
每一次只会打一点血或者两点血,也就上从上面两个状态进行转移就可以了

f[i] = f[i-2]*p/100 + f[i-1]*(100-p)/100

只需要对这个值进行求逆元就可以了

代码
#include <bits/stdc++.h>
using namespace std;
const int M=2e5+5;
#define int long long
const int mod=998244353;

inline int read(){
    int x=0,f=1;
    char ch=getchar();
    while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
    while(ch>='0'&&ch<='9'){x=(x<<1)+(x<<3)+(ch^48);ch=getchar();}
    return x*f;
}

int kpow(int a,int b) {
    int ans=1;
    while(b) {
        if(b&1)ans=ans*a%mod;
        a=a*a%mod;
        b>>=1;
    }
    return ans;
}

int f[M];

signed main() {
    int n=read(),p=read();
    f[0]=0;
    f[1]=1;
    //从哪里转移过来的概率
    for(int i=2;i<=n;i++)
        f[i]=(1+(f[i-2]*p+f[i-1]*(100-p))%mod*kpow(100,mod-2)%mod)%mod;
    cout<<f[n];
    return 0;
}

标签:abc,--,int,ch,read,280,100
From: https://www.cnblogs.com/basicecho/p/16949571.html

相关文章

  • MFC--窗口信息
    获取窗口信息 CWnd*pWnd=GetDlgItem(IDC_STATIC1);HWNDhWnd=pWnd->GetSafeHwnd();//CWnd*转化为HWNDLONGn=::GetWindowLong(hWnd,GWL_STYLE);......
  • 动态规划_整数拆分
    '给定一个正整数n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。返回你可以获得的最大乘积。'示例1:'输入:2'输出:1'解释:2=1+1,1×1=1。'......
  • Cannot add foreign key constraint 错误解决办法
    【1】报错情况Cannotaddforeignkeyconstraint(1.1)情况1,建表时报错REFERENCEScommanddeniedtouser'AUDITDBA'@'x.x.x.x'fortable'audit_activiti.act_re_depl......
  • 前端和后台建立websocket长连接,并添加心跳检测
    Nginx代理服务器默认1分钟会导致websocket长连接端口,所以服务端与客户端需要添加心跳检测1.前端代码Vuedata(){return{showDeviceDialog:true,......
  • 【CVPR2022】Detecting Camouflaged Object in Frequency Domain
    【CVPR2022】DetectingCamouflagedObjectinFrequencyDomain论文有一个非官方的实现:https://github.com/VisibleShadow/Implementation-of-Detecting-Camouflaged-Obje......
  • 如何将java对象转换成json数据
    packagecn.hopetesting.com.test;importcn.hopetesting.com.domain.User;importcom.fasterxml.jackson.core.JsonProcessingException;importcom.fasterxml.jackson.da......
  • 时时刻刻提醒自己做好口腔卫生
    这几天,疫情爆发,口腔脓肿简直要人命,睡不着觉,工作不了,吃不下喝不下,暴瘦5斤,最后还是去医院进行处理和打针。医生分析是吃喝后不注重口腔卫生,智齿处有残渣没处理干净造成,这么......
  • oracle19c 修改字符集
    环境:centos7.6oracle19c修改过程:shutdownimmediate;startupmount;ALTERSYSTEMENABLERESTRICTEDSESSION;ALTERSYSTEMSETJOB_QUEUE_PROCESSES=0;ALTE......
  • 2022-2023-1 20221322《计算机基础与程序设计》第十四周学习总结
    作业信息这个作业属于哪个课程<班级的链接>(2022-2023-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(2022-2023-1计算机基础与程序设计第十三周作......
  • RNA-seq 详细教程:搞定count归一化(5)
    学习目标了解如何在归一化过程中列出不同的uninterestingfactors(无关因素)了解常用的归一化方法,已经如何使用了解如何创建DESeqDataSet对象及其结构了解如何使用......