CF1051D Bicolorings

R以及Rstudio超详细安装教程(包括安装过程中出现的问题) R安装及Rstudio安装,以及安装中出现的问题 阅读详情

原题链接:http://codeforces.com/contest/1051/problem/D

Bicolorings

You are given a grid, consisting of 2 2 2 rows and n n n columns. Each cell of this grid should be colored either black or white.

Two cells are considered neighbours if they have a common border and share the same color. Two cells A A A and B B B belong to the same component if they are neighbours, or if there is a neighbour of A A A that belongs to the same component with B B B.

Let’s call some bicoloring beautiful if it has exactly k k k components.

Count the number of beautiful bicolorings. The number can be big enough, so print the answer modulo 998244353 998244353 998244353.

Input

The only line contains two integers n n n and k ( 1 ≤ n ≤ 1000 , 1 ≤ k ≤ 2 n ) k (1≤n≤1000, 1≤k≤2n) k(1≤n≤1000,1≤k≤2n) — the number of columns in a grid and the number of components required.

Output

Print a single integer — the number of beautiful bicolorings modulo 998244353 998244353 998244353.

Examples
input

3 4

output

12

input

4 1

output

2

input

1 2

output

2

Note

One of possible bicolorings in sample 1 1 1:

题解

一眼状压 d p dp dp题, d p [ i ] [ j ] [ k ] dp[i][j][k] dp[i][j][k]表示前 i i i列,联通块数量为 j j j,该列的 m a s k mask mask为 k k k时的方案数,日常转移没有什么问题.

代码
#include<bits/stdc++.h>
using namespace std;
const int M=1005,mod=998244353;
long long dp[M][M<<1][4];
int n,m,i,j,k;
void in(){scanf("%d%d",&n,&m);}
void ac()
{
	dp[1][1][0]=dp[1][1][3]=dp[1][2][1]=dp[1][2][2]=1;
	for(i=1;i<n;++i)for(j=1;j<=(i<<1);++j)
	{
		for(k=0;k<4;++k)(dp[i+1][j][k]+=dp[i][j][k])%=mod;
		for(k=1;k<4;++k)(dp[i+1][j+1][k]+=dp[i][j][0])%=mod;
		for(k=1;k<3;++k)(dp[i+1][j+1][k]+=dp[i][j][3])%=mod,(dp[i+1][j][3]+=dp[i][j][k])%=mod,(dp[i+1][j][0]+=dp[i][j][k])%=mod;
		(dp[i+1][j+2][1]+=dp[i][j][2])%=mod,(dp[i+1][j+2][2]+=dp[i][j][1])%=mod,(dp[i+1][j+1][0]+=dp[i][j][3]);
	}
	printf("%lld",(dp[n][m][0]+dp[n][m][1]+dp[n][m][2]+dp[n][m][3])%mod);
}
int main(){in();ac();}
Android 12,通过JNI写framebuff实现白板书写加速 Android 书写加速 阅读详情

相关推荐

Halcon 3D视觉实战:5步将线激光高度数据转为可分析的深度图与点云

本文详细介绍了如何利用Halcon平台将线激光高度数据转换为深度图与点云的5步实战方法。通过具体代码示例和工业检测案例(如锂电池胶水测量),帮助工程师高效处理3D视觉数据,实现从原始数据到三维可视化的完整技术链路。

weixin_29039773的博客 361

CF1051D Bicolorings dp

水题一道 $f[i][j][S]$表示$2 * i$的矩形,有$j$个联通块,某尾状态为$S$ 然后转移就行了... #include <vector> #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> ...

weixin_30916125的博客 105

uds协议之can总线程序升级

uds协议简介 如何利用uds协议升级 升级流程 uds服务类型介绍

fangye945a的博客 1万+

dp

1.codeforce-----Bicolorings 题意:在 2xn 的表中只能放两个颜色,求可分成m个区域的个数 三维数组DP解决 #include <iostream> #include <cstring> #include <cstdio> #include <cstring> using namespa...

qq_41199502的博客 287

SAP批量程序(一)-静态批量EX,FX和期间批量MB,WB和TB

SAP批量程序(一)-静态批量和区间批量

weixin_38974136的博客 5478

【机器学习】实验2,基于回归分析的大学综合得分预测(完整代码实现+分析)

大学排名是一个非常重要同时也极富挑战性与争议性的问题,一所大学的综合实力涉及科研、师资、学生等方方面面。目前全球有上百家评估机构会评估大学的综合得分进行排序,而这些机构的打分也往往并不一致。在这些评分机构中,世界大学排名中心(Center for World University Rankings,缩写CWUR)以评估教育质量、校友就业、研究成果和引用,而非依赖于调查和大学所提交的数据著称,是非常有影响力的一个。

高丽大学人工智能硕士在读|专注大模型、RAG、OCR与AI工程实践 1974

CF 1051E - Vasya and Big Integers 扩展KMP DP

题意: 给你一个由数字构成的字符串,问你有多少种划分方式,使得每段不含前导0,并且每段的数字大小在[l, r]之间。 题解: 很明显的DP。 dp[i]为下标为i时的划分数,设ll为以i+1开始,最小的大于l的位置, rr为以i+1开始,最大的小于r的位置, 那么dp[ll], dp[ll + 1]......dp[rr]都要+d[i],用前缀和或者线段树都行。 关键在与怎么求ll, ...

c6376315qqso的专栏 563

使用Captum库对CIFAR数据集进行模型可解释性分析

为了训练模型,我们需要指定损失函数和优化技术。损失函数用于衡量模型的性能,在训练过程中,我们通过调整模型参数来最小化损失。本教程使用。

2501_90323865的博客 178

D. Rescue Nibel! -树状数组 组合数

进行排序之后,按照左端点升序排列,那么也就是只需要满足前面的右端点大于本位置左端点即可,因为本位置左端点一定是大于等于前面左端点的,也就是左端点的最大值。那么只需要快速计算出来前面有多少个右端点大于等于本位置左端点就可以利用组合数求出来其中k-1个即可。考察较为综合,但都比较套路。首先两个区间有交集的条件是其左端点的最大值小于右端点的最小值,那么推广到多个区间时,也是这个道理。

jisuanji2606414的博客 196

24、虚拟地理信息系统:技术与应用的全面解析

本文全面解析了虚拟地理信息系统(虚拟GIS)的技术架构与应用前景。文章从地理空间数据的增长出发,探讨了虚拟GIS在地形、建筑、天气等多维度数据的交互式可视化技术,重点介绍了全球层次结构、多分辨率模型、缓存分页机制及交互导航方法。系统已应用于天气分析、城市规划、应急响应等领域,并展望了未来在数据处理、模拟操作、移动可视化及智能城市、文化遗产保护等方向的发展路径与技术挑战。

v4w5x6的博客 89

某Z节验证码

某Z节验证码、captchaBody、滑块、旋转、空间推理

mamenqi_csdn的博客 773

Bicolorings(DP)

Bicolorings Educational Codeforces Round 51 (Rated for Div. 2)https://codeforces.com/problemset/problem/1051/D 题目大意: 给出222行nnn列的网格,每个格子涂黑或涂白,l两个相邻的格子如果颜色相同则说他们在一个区域,如果颜色不同则是两个区域,求这个网格分成kkk个区域的方案数。...

NaNa 255

协方差矩阵自适应进化策略(CMA-ES)详解:从基础原理到优化算法

CMA-ES是一种先进的无导数优化算法,基于生物进化原理解决连续域非线性优化问题。该算法通过自适应调整多元正态分布的均值、协方差矩阵和步长参数,自动学习搜索空间结构,无需梯度信息即可高效优化。核心创新包括协方差矩阵的秩1和秩μ更新策略,以及基于进化路径的步长控制机制。CMA-ES具有旋转不变性、标度不变性和全局探索能力,特别适合3-300维的黑盒优化问题,在复杂系统仿真、超参数调优等领域表现优异。算法实现中关键参数如种群大小、学习率等均有自适应设置规则,使其成为连续优化领域的基准算法之一。

qq_42212808的博客 524

CF1051D Bicolorings 递推

考试T2,随便推一推就好了~ code: #include <bits/stdc++.h> #define N 1015 #define mod 998244353 #define ll long long #define setIO(s) freopen(s".in","r",stdin) , freopen(s".out","w",std...

EM LGH 393

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

cf1051 D. Bicolorings

没想到是能开三维的 #include<bits/stdc++.h> using namespace std; typedef long long ll; const long long MOD=998244353; ll dp[1010][2010][5]; int main() { int n,kk; scanf("%d%d",&n,&a...

weixin_30312563的博客 150

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

2018.09.21 codeforces1051D. Bicolorings(线性dp)

传送门 sb线性DP。 f[i][j][0/1/2/3]f[i][j][0/1/2/3]f[i][j][0/1/2/3]表示前i列j个连通块且第i列状态为00/01/10/11时的方案总数。 这个显然可以轻松转移。 举例: f[i][j][0]=(f[i−1][j][0]+f[i−1][j][1]+f[i−1][j][2]+f[i−1][j−1][3])f[i][j][0]=(f[i-1][j][...

苟为蒟蒻又何妨 398

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

【CodeForces - 1051D】Bicolorings (dp,类似状压dp)

题干: You are given a grid, consisting of 22 rows and nn columns. Each cell of this grid should be colored either black or white. Two cells are considered neighbours if they have a common border and s...

xuanweiace的博客 489

2022“杭电杯”中国大学生算法设计超级联赛(9)签到题4题

2022“杭电杯”中国大学生算法设计超级联赛(9)2022“杭电杯”中国大学生算法设计超级联赛(9)2022“杭电杯”中国大学生算法设计超级联赛(9)2022“杭电杯”中国大学生算法设计超级联赛(9)...

小哈里的博客 1624

cf1051d 简单的状态压缩dp

/* 给定一个二行n列的格子,在里面填黑白色,要求通过黑白色将格子分为k块 请问有多少种填色方式 dp[j][k][0,1,2,3] 填到第j列,有k块,第j列的颜色, */ #include<bits/stdc++.h> using namespace std; #define ll long long #define mod 998244353 //...

weixin_30533797的博客 160

2021寒假第一周

2021寒假第一周模板题目 模板 完善KMP与扩展KMP 题目 CF 1051 E CF 535 E CF 652 E

micaudience的博客 247

2021中国大学生程序设计竞赛(CCPC)- 网络选拔赛(重赛)1006(快速幂+dp+后缀和)

Nun Heh Heh Aaaaaaaaaaa Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 262144/262144 K (Java/Others) Total Submission(s): 1873Accepted Submission(s): 1031 Problem Description Vasily Tadokorov is a stringologist. He thinks a string is frag...

m0_57006708的博客 793

2019牛客暑期多校训练营(第八场)

All-one Matrices 链接:https://ac.nowcoder.com/acm/contest/888/A 来源:牛客网 题目描述 Gromah and LZR entered the great tomb, the first thing they see is a matrix of size n×mn×mn×m times mn×m, and the elements in ...

deadpool66的博客 728

CodeForces 1051D Bicolorings (DP)

  You are given a grid, consisting of 22 rows and nn columns. Each cell of this grid should be colored either black or white. Two cells are considered neighbours if they have a common border and sha...

qmhna_的博客 530

2017--ccpc 杭州重现赛题解

Problem A. Super-palindrome 题意: You are given a string that is consisted of lowercase English alphabet. You are supposed to change it into a super-palindrome string in minimum steps. You can change ...

AAAAAAAC的博客 753

codeforces 1051D Bicolorings 【DP】

题目链接:传送门 题意:给你一个2行n列的矩阵 每一个格子为白色或者黑色 当有着共同边界且颜色相同的的两个格子被定义为一块区域 求2行n列 被分为 m块区域的方案数 题解:一开始以为是数学题,死命推公式,结束看了蔡队的才知道是dp,发现所有人都会dp。 AC_code: #include&lt;bits/stdc++.h&gt; using namespace std; #define...

OOOak 288

记录4 最近贺题时做的题 cf611e,cf873f,cf264d,cf1320d,cf1438c,hdu6833,hdu3602,cf1187g,cf1051e,cf925d,cf840c,etc

cf611e 简单题,三个火枪手分别有a,b,c 的攻击,打怪,每个怪有生命值,每回合三个火枪手各选一个怪打,怪只有一回合里被各个火枪手打的累计伤害大于等于生命值才会死。求最少多少回合打怪 #include<bits/stdc++.h> #define FOR(i,s,t) for(int i=s;i<=t;++i) #define REP(i,t,s) for(int i=t;i>=s;--i) #define RESET(a) memset(a,0,sizeof a) using

ureaster的博客 433
上一篇: CF1047E Region Separation
下一篇: BZOJ4025 二分图
ShadyPi
博客等级 码龄9年 1万+粉丝 637原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShadyPi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值