题解 CF1391D 【505】

该博客详细介绍了如何解决代码forces(CF)1391D问题。博主指出,对于n×m矩阵,目标是使得任意长度为偶数的正方形子矩阵含有奇数个1,最少需要改变多少个单元格的状态。通过讨论min(n,m)=1,2,3的情况,得出解决方案。当n=1时,答案为0;对于n=2,3的情况,采用动态规划的方法,定义状态并进行转移。代码实现的时间复杂度为O(max(n,m)×2^2×min(n,m))。" 105190163,4553,决策树分类算法详解与Python实现,"['决策树', '自然语言处理', '算法']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题解 - CF1391D\mathrm{CF1391D}CF1391D

题目意思

就是给你个 n×mn\times mn×m 的矩阵,为了使其的任意长度为偶数的正方形子矩阵里要含有奇数个 111 最少要改变几个 ai,ja_{i,j}ai,j 的状态。

Sol\mathrm{Sol}Sol

首先可以知道 4×44\times 44×4 的合法矩阵是不存在的,那么 min⁡(n,m)>3\min(n,m)>3min(n,m)>3 的矩阵也是不存在的。

那么我们只要分类讨论分别 min⁡(n,m)=1,2,3\min(n,m)={1,2,3}min(n,m)=1,2,3 的情况即可。

我们在这边钦定 n≤m,n≤3n\leq m,n\leq 3nm,n3

对于 n=1n=1n=1 的情况由于不存在偶数长度的子矩阵直接输出 000

对于 n=2,3n=2,3n=2,3 的情况我们考虑dp。设 fi,j,k,pf_{i,j,k,p}f

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值