P2331 [SCOI2005]最大子矩阵 题意 : 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. 第一行为n,m,k(1≤n≤100,1≤m≤2,1≤k≤10),接下来n行描述矩阵每行中的每个元素的分值(每个元素的分值的绝对值不超过32767). 思路: 注意这里的m只可能为1或者2.所以可以分开来考虑,对于m = 1,比较容易,dp[i][k] = dp[ t ][ k-1 ] + (t 到 i 的和).然而对于m等于2…
题目链接:传送门 题目: 题目描述 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. 输入输出格式 输入格式: 第一行为n,m,k(≤n≤,≤m≤,≤k≤),接下来n行描述矩阵每行中的每个元素的分值(每个元素的分值的绝对值不超过32767). 输出格式: 只有一行为k个子矩阵分值之和最大为多少. 输入输出样例 输入样例#: 复制 - - 输出样例#: 复制 PS:好像有很多类似的题目,上次的那道中国象棋(放炮的)也是,都是分类讨…
题目描述 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. 输入输出格式 输入格式: 第一行为n,m,k(1≤n≤100,1≤m≤2,1≤k≤10),接下来n行描述矩阵每行中的每个元素的分值(每个元素的分值的绝对值不超过32767). 输出格式: 只有一行为k个子矩阵分值之和最大为多少. 输入输出样例 输入样例#1: 3 2 2 1 -3 2 3 -2 3 输出样例#1: 9 m分类讨论m=1,f[i][j]表示前i个选了j个矩…
传送门 \[\huge\mathit{warning}\] \[\small\text{以下说明文字高能,请心脏病,,,,,,人士谨慎观看,请未成年人在家长陪同下观看}\] 皮这一下很开心 其实是代码很丑而已 不要在意那些奇怪的变量名,和那四个布尔函数 看到\(k\)很小,\(m\leq2\),很爽有没有,设\(f_{i,j,k}\)表示第\(i\)行的二进制状态为\(j\)(0不放,1放),选了\(k\)个矩阵的最大值.转移时枚举当前放的状态,记为\(o\),然后和上一行状态作比较,如果j不等…
洛谷 这一题,乍一眼看上去只想到了最暴力的暴力--大概\(n^4\)吧. 仔细看看数据范围,发现\(1 \leq m \leq 2\),这就好办了,分两类讨论. 我先打了\(m=1\)的情况,拿了30分. 就相当于最大\(k\)段子段和. 直接用\(dp[i][j][0/1]\)数组表示第\(i\)个选了\(j\)段的最大值,0代表不选,1为选. 那么状态转移方程也很简单: \(dp[i][j][1]=max(dp[i-1][j-1][0],dp[i-1][j][1])+t[i];\) \(dp…
题目描述 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. 输入输出格式 输入格式: 第一行为n,m,k(1≤n≤100,1≤m≤2,1≤k≤10),接下来n行描述矩阵每行中的每个元素的分值(每个元素的分值的绝对值不超过32767). 输出格式: 只有一行为k个子矩阵分值之和最大为多少. 输入输出样例 输入样例#1: 复制 3 2 2 1 -3 2 3 -2 3 输出样例#1: 9   这里注意题目范围 1<=m<=2!!!…
题目 DP 此题可以分为两个子问题. \(m\)等于\(1\): 原题目转化为求一行数列里的\(k\)块区间的和,区间可以为空的值. 直接定义状态\(dp[i][t]\)表示前i个数分为t块的最大值. 因为区间可以为空,所以最大值再小也不会比0小,所以初始化\(dp\)值为\(0\). 有方程\(dp[i][t]=max(dp[i-1][t],dp[j][t-1]+\sum_{k=j+1}^{i}a[k])\) 考虑顺序及边界,发现此时的\(dp[i][t]\)是从\(t-1\)块转移过来的,所…
点此看题面 大致题意: 给你一个\(2*n\)的扫雷棋盘,现让你根据第二列的信息确定第一列有多少种摆法. 扫雷性质 听说这是一道动态规划+数学题. 其实,根据扫雷游戏的某个性质,只要确定了第一个格子是否有雷,就可以确定整列雷的分布情况! 因此,最多只可能有两种摆法. 这样一来,只要对第一个格子是否有雷分类讨论即可,遇到合法的情况就将\(ans\)加\(1\). 如何确定整列雷的分布情况 我们再来说一下应如何根据第一个格子是否有雷来确定整列雷的分布情况. 我们可以用\(a_i\)来存储第二列的信息…
最大子矩阵 bzoj-1084 SCOI-2005 题目大意:给定一个n*m的矩阵,请你选出k个互不重叠的子矩阵使得它们的权值和最大. 注释:$1\le n \le 100$,$1\le m\le 2$,$1\le k\le 10$. 想法:不会...看了数据范围..卧槽?m<=2?????我们就可以进行一个简单的轮廓线dp. 首先,先分m==1和m==2分类讨论,m==1不说了 m==2 令f[k][i][j]是第一列到了i,第二列到了j,已经选取了k个矩形的最大权值. 转移:有3种转移方式:…
1084: [SCOI2005]最大子矩阵 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1325  Solved: 670[Submit][Status] Description 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. Input 第一行为n,m,k(1≤n≤100,1≤m≤2,1≤k≤10),接下来n行描述矩阵每行中的每个元素的分值(每个元素的分值的绝对值不超过32…