Description 现有一个n行m列的棋盘,一只马欲从棋盘的左上角跳到右下角.每一步它向右跳奇数列,且跳到本行或相邻行.跳越期间,马不能离开棋盘.例如,当n = 3, m = 10时,下图是一种可行的跳法. 试求跳法种数mod 30011. Input 仅有一行,包含两个正整数n, m,表示棋盘的规模. Output 仅有一行,包含一个整数,即跳法种数mod 30011. Sample Input 3 5 Sample Output 10 HINT 对于100%的数据,1 ≤ n ≤ 50,…
P3990 [SHOI2013]超级跳马 题目描述 现有一个\(n\) 行 \(m\) 列的棋盘,一只马欲从棋盘的左上角跳到右下角.每一步它向右跳奇数列,且跳到本行或相邻行.跳越期间,马不能离开棋盘. 试求跳法种数\(\bmod 30011\). 输入输出格式 输入格式: 仅有一行,包含两个正整数\(n, m\),表示棋盘的规模. 输出格式: 仅有一行,包含一个整数,即跳法种数\(\bmod 30011\). 说明 对于\(10\%\)的数据,\(1 ≤ n ≤ 10\),\(2 ≤ m ≤ 1…
题目链接: (bzoj) https://www.lydsy.com/JudgeOnline/problem.php?id=4417 (luogu)https://www.luogu.org/problemnew/show/P3990 题解: 一看就是矩乘优化dp. 每次跳奇数列?那么我们可以将列两两分组,以两列为一组作为矩阵要记录的状态.一个元素位于组内第一列说明它不可能再跳到这一组的第二列(为了避免算重).转移矩阵的构造见代码. 那么我们用矩阵来表示转移方程: 设向量\(F[i]\)表示状态…
这道题还是一道比较不可做的矩阵题 首先我们先YY一个递推的算法:令f[i][j]表示走到第i行第j列时的方案数,那么有以下转移: f[i][j]=f[i-1][j-2*k+1]+f[i+1][j-2*k+1]+f[i][j-2*k+1](1<=k<=i/2) 但这样是很慢的,然后我们就可以前缀和优化 这里有两种方法,一个是用奇偶数行进行讨论,还有一种我认为是比较清晰的也比较容易理解 我们先来看一张图: 我们令f[i][j]表示前面可以转移到它的前缀和.例如图中的蓝色格子就是前6个格子的和 然后…
传送门 首先不难设\(f[i][j]\)表示跳到\((i,j)\)的方案数,那么不难得到如下转移 \[f[i][j]=\sum\limits_{k=1}^{\frac n2}f[i-2k+1][j-1]+f[i-2k+1][j]+f[i-2k+1][j+1]\] 然后维护两个前缀和\(s1,s2\),分别表示与当前列相差为偶数的前缀和以及与当前列相差为奇数的前缀和,那么可以这样转移 \[s1[i+1][j]=s2[i][j]+s1[i][j-1]+s1[i][j]+s1[i][j+1]\] \[…
4417: [Shoi2013]超级跳马 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 379  Solved: 230[Submit][Status][Discuss] Description 现有一个n行m列的棋盘,一只马欲从棋盘的左上角跳到右下角.每一步它向右跳奇数列,且跳到本行或相邻行.跳越期间,马不能离开棋盘.例如,当n = 3, m = 10时,下图是一种可行的跳法.   试求跳法种数mod 30011. Input 仅有一行,包含两…
洛谷 P3998 [SHOI2013]发微博 洛谷传送门 题目描述 刚开通的 SH 微博共有n个用户(1Ln标号),在这短短一个月的时间内, 用户们活动频繁,共有m 条按时间顺序的记录: ! x 表示用户x发了一条微博: + x y 表示用户x和用户y成为了好友 − x y 表示用户x和用户y解除了好友关系 当一个用户发微博的时候,所有他的好友(直接关系)都会看到他的消息. 假设最开始所有人之间都不是好友关系,记录也都是合法的(即+ x y时x和 y一定不是好友,而− x y时x和y一定是好友)…
洛谷题目链接:[NOI2010]超级钢琴 题目描述 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以弹奏出n个音符,编号为1至n.第i个音符的美妙度为Ai,其中Ai可正可负. 一个"超级和弦"由若干个编号连续的音符组成,包含的音符个数不少于L且不多于R.我们定义超级和弦的美妙度为其包含的所有音符的美妙度之和.两个超级和弦被认为是相同的,当且仅当这两个超级和弦所包含的音符集合是相同的. 小Z决定创作一首由k个…
这道题... 让我见识了纪中的强大 这道题是来纪中第二天(7.2)做的,这么晚写题解是因为 我去学矩阵乘法啦啦啦啦啦对矩阵乘法一窍不通的童鞋戳链接啦 层层递推会TLE,正解矩阵快速幂 首先题意就是给你一个 n 行m 列 的格子图 一只马从棋盘的左上角跳到右下角.每一步它向右跳奇数列,且跳到本行或相邻行. 题意很简单暴力dp的思路也很简单但是数据很恶心虽然远古一点,但毕竟是省选题 1 ≤ n ≤ 50,2 ≤ m ≤ 10^9 不过还是给了我们一点提示:n这么小? 总之我们先找出转移式对于每一个点…
Description 现有一个n行m列的棋盘,一只马欲从棋盘的左上角跳到右下角.每一步它向右跳奇数列,且跳到本行或相邻行.跳越期间,马不能离开棋盘.例如,当n = 3, m = 10时,下图是一种可行的跳法.   试求跳法种数mod 30011. Input 仅有一行,包含两个正整数n, m,表示棋盘的规模. Output 仅有一行,包含一个整数,即跳法种数mod 30011. Sample Input 3 5 Sample Output 10 HINT 对于100%的数据,1 ≤ n ≤ 5…