[蓝桥杯 2022 省 A] 爬树的甲壳虫

概率dp,关键是要走出思维定势:

一般来讲,都会把dp[i]定义为从0爬到高度i的概率,但是因为任何时刻都有掉下去的可能,这样子不好推(也有大佬这样做出来的)

我们把dp[i]定义为从i爬到n的概率,公式就好推了

而且,我们可以根据定义很自然地得到:

dp[n]=0

复制代码
#include <bits/stdc++.h>
using namespace std;

typedef long long LL;

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 * 10 + ch - '0';
        ch = getchar();
    }
    return x * f;
}

const LL P = 998244353;

int n;

LL quick_pow(LL a, LL k)
{
    LL res = 1;
    while(k)
    {
        if(k&1) res = res*a%P;
        a = a * a % P;
        k>>=1;
    }
    return res;
}

int main()
{
    n = read();
    LL k1 = 1, k2 = 0, k3 = 0;
    for(int i = 1; i <= n; i++)
    {
        int a = read(), b = read();
        LL p_fall = 1ll*a*quick_pow(1ll*b, P-2) % P;
        LL p_up = 1ll*(b-a)*quick_pow(1ll*b, P-2) % P;
        k3 = (k3 + k1) % P;
        k2 = (k2 + p_fall * k1 % P) % P;
        k1 = (k1 * p_up) % P;
    }
    LL t = quick_pow(1ll-k2, P-2);
    t=(t%P+P)%P;
    printf("%lld",k3*t%P);
    return 0;
}
复制代码

一开始过不了样例,对着main函数看了半天,最后才发现问题在快速幂里😂

一开始把

if(k&1) res = res*a%P;
        a = a * a % P;

这两句的顺序写反了,先倍增a,然后才更新res,导致快速幂的结果错误

本文作者:Gold_stein

本文链接:https://www.cnblogs.com/smartljy/p/18130923

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   Gold_stein  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· [翻译] 为什么 Tracebit 用 C# 开发
· Deepseek官网太卡,教你白嫖阿里云的Deepseek-R1满血版
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· 刚刚!百度搜索“换脑”引爆AI圈,正式接入DeepSeek R1满血版
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起
🔑
  1. 1 逃离地面 RAD & 三浦透子
逃离地面 - RAD & 三浦透子
00:00 / 00:00
An audio error has occurred.

作词 : 野田洋次郎

作曲 : 野田洋次郎

空飛ぶ羽根と引き換えに 繋ぎ合う手を選んだ僕ら

それでも空に魅せられて 夢を重ねるのは罪か

夏は秋の背中を見て その顔を思い浮かべる

憧れなのか、恋なのか 叶わぬと知っていながら

重力が眠りにつく 1000年に一度の今日

太陽の死角に立ち 僕らこの星を出よう

彼が眼を覚ました時 連れ戻せない場所へ

「せーの」で大地を蹴って ここではない星へ

行こう

もう少しで運命の向こう もう少しで文明の向こう

もう少しで運命の向こう もう少しで

夢に僕らで帆を張って 来たるべき日のために夜を超え

いざ期待だけ満タンで あとはどうにかなるさと 肩を組んだ

怖くないわけない でも止まんない

ピンチの先回りしたって 僕らじゃしょうがない

僕らの恋が言う 声が言う

「行け」と言う