首页 > 其他分享 >[ABC295Ex] E or m 题解

[ABC295Ex] E or m 题解

时间:2023-03-26 21:44:20浏览次数:46  
标签:状态 le 格子 题解 ABC295Ex 矩阵 text

状压 dp,2 hd 4 me/ng。

题意

开始你有一个全 \(0\) 矩阵,你可以随意执行如下操作:

  • 选择任意一行,将其从最左端开始的连续一段染成 \(1\)。
  • 选择任意一列,将其从最上端开始的连续一段染成 \(1\)。

如果一个矩阵可以由此得到,那么这个矩阵被称为好的。

现在你有一个 01? 矩阵 \(a\),你需要将所有 ? 替换为 01,问得到的矩阵中有多少个是好的。答案对 \(998244353\) 取模。

\(1\le n,m\le 18\)。

思路

可以发现一个矩阵是否合法取决于对每个格子而言,其上方或左方是否有一方仍是全 \(1\) 段。

于是考虑设 \(f_{(i,j),s,k=0/1}\) 表示现在处理完了 \((i,j)\),列状态为 \(s\)(列状态指目前 \(m\) 列里每一列是否仍为全 \(1\) 段),行状态为 \(k\)(即当前行是否仍为全 \(1\) 段)。

初始状态为 \(f_{(1,0),\text{full},1}=1\),即啥都没填的情况。

对当前状态 \(f_{(i,j),s,k}\),我们分类讨论:

\(j<m\)(格子不在行末)

那么下一个格子即为 \((i,j+1)\),我们继续分类讨论:

  • \(a_{i,j+1}=0\):那么第 \(j+1\) 列的列状态则变成 \(0\),第 \(i\) 行的行状态变为 \(0\),即 \(f_{(i,j),s,k}\to f_{(i,j+1),s_{j+1}\gets 0,0}\)。
  • \(a_{i,j+1}=1\):要求当前行状态与第 \(j+1\) 列的列状态不能全为 \(0\),转移方程为 \(f_{(i,j),s,k}\to f_{(i,j+1),s,k}\)。
  • \(a_{i,j+1}=\text{?}\):综合上面两种情况即可。

\(j=m\)(格子在行末)

那么下一个格子即为 \((i+1,1)\),继续分类讨论/oh:

  • \(a_{i+1,1}=0\):那么第 \(1\) 列的列状态变成 \(0\),且第 \(i+1\) 行的行状态变成 \(0\),即 \(f_{(i,m),s,k}\to f_{(i+1,1),s_1\gets 0,0}\)。
  • \(a_{i+1,1}=1\):无要求,因为这就是第 \(i+1\) 行的顶头格子,直接 \(f_{(i,m),s,k}\to f_{(i+1,1),s,1}\)。
  • \(a_{i+1,1}=\text{?}\):综合上面两种情况即可。

最终答案即为 \(\displaystyle\sum_{i}\sum_{j}f_{(n,m),i,j}\)。

标签:状态,le,格子,题解,ABC295Ex,矩阵,text
From: https://www.cnblogs.com/bykem/p/17259641.html

相关文章

  • 省选联考 2018 题解
    感觉有的歌确实不适合中午刚起来脑袋晕晕乎乎的就去听。太舒缓或者太激烈都不太好。太舒缓容易让人想睡回去,比如我今天中午打了半个小时哈欠。太激烈的……想象一下中午如......
  • AT_abc295_d 题解
    一、题目描述:给你一个由数字0~9组成的字符串,长度为N(1<=N<=500000)。求出满足1<=l<=r<=N且在l~r区间内所有数字都出现了偶数次的整数对l,r有多少对。......
  • ABC295 D题 题解
    题意简述给定一个长度不超过\(5\times10^5\)的,仅有数字构成的字符串,问存在多少段子串,使得子串内字符重新排序后,前半段与后半段相同?做法分析重组后前后两部分相同,其实也......
  • [ARC139D] Priority Queue 2 题解
    上个世纪做过这题,然后今天比赛(abc295)出了道弱化没做出来,被pty喷了一遍后爬来写个题解/kk首先这种期望/总和题都有个套路,就是通过另外一种角度来计算每个元素的贡献。对......
  • ABC295 A~C题解
    A-ProbablyEnglish共有\(n\)个单词,如果出现过and,not,that,the,you其中一个单词至少一次,输出\(Yes\),否则,输出\(No\)。(输入的单词均为小写)按题意模拟即可:#include<......
  • 电脑升级到Win11后,插入耳机不识别问题解决方案?
    1、在网上搜索Realtek高清音频管理器下载 2、可以选择第一个点击下载安装,重启电脑后即可修复 ......
  • 中国石油大学(北京)第三届“骏码杯”程序设计竞赛题解
    中国石油大学(北京)第三届“骏码杯”程序设计竞赛题解感谢大家的参与,我是本次比赛所有$10$道题目的出题人,在接下来的题解中,所有C++与Python的标程均由我本人编写,因为我......
  • Codeforces Round 859 (Div. 4) 题解集
    目录CF1807APlusorMinusDescriptionSolutionCodeCF1807BGrabtheCandiesDescriptionSolutionCodeCF1807CFindandReplaceDescriptionSolutionCodeCF1807DOddQueri......
  • 【牛客小白月赛69】题解与分析A-F【蛋挞】【玩具】【开题顺序】【旅游】【等腰三角形(
    比赛传送门:https://ac.nowcoder.com/acm/contest/52441感觉整体难度有点偏大。......
  • 「Gym102759B」Cactus Competition 题解
    传送门「Gym102759B」CactusCompetition题目大意有一个\(n\timesm\)的网格图,一个长度为\(n\)的序列\(a\),和一个长度为\(m\)的序列\(b\)。网格图中,第\(i\)......