[noi253]A
定义f[i][j]表示从(i,j)走到最后一行的期望,不断从下往上dp那么对于每一行都可以得到m个方程。
但由于这m个方程不是DAG,因此考虑用高斯消元,但时间复杂度不对。
观察方程可以发现如果不断将f[i][j]表示出f[i][j+1]并代入那么就可以计算出f[n][m],再不断反代出来即可。

1 #include<bits/stdc++.h>
2 using namespace std;
3 #define mod 998244353
4 #define ll long long
5 ll n,m,a,b,x[1001],y[1001],f[1001];
6 ll ksm(ll n,ll m){
7 if (!m)return 1;
8 ll s=ksm(n,m>>1);
9 s=s*s%mod;
10 if (m&1)s=s*n%mod;
11 return s;
12 }
13 int main(){
14 scanf("%lld%lld%lld%lld",&n,&m,&a,&b);
15 if (m==1){
16 printf("%lld",2*(n-a));
17 return 0;
18 }
19 for(int i=1;i<=n-a;i++){
20 x[1]=(mod+1)/2;
21 y[1]=(f[1]+3)*x[1]%mod;
22 for(int j=2;j<m;j++){
23 x[j]=(3LL*mod+1)/4;
24 y[j]=(1+x[j]*(f[j]+y[j-1]))%mod;
25 x[j]=ksm(x[j]*(3-x[j-1]+mod)%mod,mod-2);
26 y[j]=y[j]*x[j]%mod;
27 x[j]=x[j]*(3LL*mod+1)/4%mod;
28 }
29 f[m]=(y[m-1]+f[m]+3)*ksm((2-x[m-1]+mod)%mod,mod-2)%mod;
30 for(int j=m-1;j;j--)f[j]=(x[j]*f[j+1]+y[j])%mod;
31 }
32 printf("%lld",f[b]);
33 return 0;
34 }
[noi253]A的更多相关文章
随机推荐
- Parcel Fabric Tools(宗地结构工具)
宗地结构工具 1.图层和表视图 # Process: 创建宗地结构图层 arcpy.MakeParcelFabricLayer_fabric("", 输出图层) # Process ...
- 洛谷2046 NOI2010海拔
QwQ题目太长 这里就不复制了 题目 这个题...算是个比较经典的平面图最小割变成对偶图的最短路了QwQ 首先考虑最小割应该怎么做. 有一个性质,就是每个点的海拔要么是1,要么是0 QwQ不过这个我不 ...
- Python内置高阶函数map()
map()函数map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回. 例如,对于lis ...
- 从C过渡到C++需要了解的“新特性”
第一个C++程序 #include <iostream> using namespace std; //编译指令 int main() { cout << "Hell ...
- ubuntu16.04安装klee
ubuntu16.04安装klee(基于llvm 3.8)教程 前言 查阅了很多资料,踩了不少的坑,总的来说,这个应该是比较完善的基于llvm3.8和ubuntu16.04的安装教程,至少我自己按照这 ...
- [Java]Sevlet
0 前言 对于Java程序员而言,Web服务器(如Tomcat)是后端开发绕不过去的坎.简单来看,浏览器发送HTTP请求给服务器,服务器处理后发送HTTP响应给浏览器. Web服务器负责对请求进行处理 ...
- '\r'(回车符),'\n'(换行符)与"\r\n"
一.'\n','\r'和"\r\n" 回车\r本义是光标重新回到本行开头,r的英文return,控制字符可以写成CR,即Carriage Return(回车,carriage有&q ...
- [软工顶级理解组] 团队规划和任务拆解(Beta)
目录 需求再分析 功能增减 管理改进 任务分解 人员管理 需求再分析 在Alpha阶段,我们的产品得到了用户的广泛好评,但是还是存在一些问题. 登录不稳定,登录速度慢等问题:这是北航VPN本身的不稳定 ...
- WiFi天线对PCB布局布线和结构的要求详解 - 全文
随着市场竞争的加剧,硬件设备正以集成化的方向发展.天线也由外置进化内置再进化到嵌入式,我们先来介绍这类应用的天线种类: ⑴ On Board板载式:采用PCB蚀刻一体成型,性能受限,极低成本,应用于蓝 ...
- Python课程笔记(一)
由于新冠状病毒的爆发,不得不在家里上网课,开课已经两个礼拜了,今天上完Python课后,准备整理一下最近学习Python的笔记. 人生苦短,我用Python 一.Hello World 初学一门新的语 ...