传送门 这道题才应该是标准的区间DP! 其实这个题用一种神奇的算法瞎写就能得80……一会可以附上参考代码……如果有神犇愿意帮助debug不胜感激…… 考虑区间DP。用dp[i][j]表示将区间[i,j]涂好需要使用的最少的颜色种数。 既然如此,dp方程就很显然,因为毕竟区间dp的思想就是先算小区间再 ...
分类:
其他好文 时间:
2018-08-26 22:34:45
阅读次数:
207
这个题和我一开始想的区别不是很大,但是要我独自做出来还是有一些难度。 每一次涂色 只有这两种可能: 1) 把一段未被 覆盖过的区间 涂成 * 色 2) 把一段被一种颜色覆盖的区间涂成 * 色 (并且 涂色区间 的两端 同为 被覆盖区间的颜色, 不然就是第一种了) 这种 dp 都要 存一个 f[i][ ...
分类:
其他好文 时间:
2018-08-26 19:38:14
阅读次数:
144
这道题对于区间进行涂色,就往区间dp上想。 区间dp肯定是从小区间合并到大区间,所以状态就写出来了。即dp[ i ][ j ]代表从 i 到 j 的区间中的最小方案数。 同时,在每一次取 i 和 j 的时候,我们在 i 到 j 中枚举 k ,借此来枚举所有的区间分割情况。 所以dp方程即为dp[ i ...
分类:
其他好文 时间:
2018-08-26 18:31:04
阅读次数:
126
嘟嘟嘟 区间dp。 令dp[i][j]表示从[i, j]的最少染色方案数。 很明显,当 i == j 时,dp[i][j] = 1;否则,如果s[i] == s[j],即两个端点颜色相同,那么端点处的颜色只用染一次,也就是说可以从 i 这头染,也可以从 j 这头染,则dp[i][j] = min(d ...
分类:
其他好文 时间:
2018-08-26 13:06:39
阅读次数:
171
#include #define lop(x,m,n) for(int x=m;xans) return; if(num==n) { ans=min(ans,k); } lop(i,1,n) { if(!used[i]&&check(i)) { used[i]=1; ... ...
分类:
其他好文 时间:
2018-08-20 22:51:17
阅读次数:
185
P1558 色板游戏 题目背景 阿宝上学了,今天老师拿来了一块很长的涂色板。 题目描述 色板长度为L,L是一个正整数,所以我们可以均匀地将它划分成L块1厘米长的小方格。并从左到右标记为1, 2, ... L。 现在色板上只有一个颜色,老师告诉阿宝在色板上只能做两件事: "C A B C" 指在A到 ...
分类:
其他好文 时间:
2018-08-20 13:11:57
阅读次数:
183
题意:一个N*M的矩形,每个点初始都是白色的,有Q次操作,每次操作将以(x,y)为圆心,r为半径的区域涂成黑点。求最后剩余白色点数。 分析:对每行,将Q次操作在该行的涂色视作一段区间,那么该行最后的白色点数即列数-区间覆盖的总长度。这就转化成了扫描线的问题。 ...
分类:
其他好文 时间:
2018-08-19 12:58:56
阅读次数:
165
LCT强强!以前总是觉得LCT非常的难懂(当然现在也是的),但实际上它真的是很厉害的一种东西。它是一种动态的链剖分结构,其实就是对于剖分出来的重链使用LCT去进行维护。cut 与 link 两个操作让我们可以构造出希望存在的链(动态更新),而 split 操作则可以提取出任意一条从 \(u\) 到 ...
分类:
其他好文 时间:
2018-08-12 01:29:06
阅读次数:
140
1260: [CQOI2007]涂色paint 链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1260 Description 假设你有一条长度为5的木版,初始时没有涂过任何颜色。你希望把它的5个单位长度分别涂上红、绿、蓝、绿、红色,用一个长 ...
分类:
其他好文 时间:
2018-08-11 19:37:39
阅读次数:
141
小象涂色题目描述:( elephant.pas/.c/.cpp )时间限制: 1s ,空间限制 128MB小象喜欢为箱子涂色。小象现在有 c 种颜色,编号为 0~c-1 ;还有 n 个箱子,编号为1~n ,最开始每个箱子的颜色为 1 。小象涂色时喜欢遵循灵感:它将箱子按编号排成一排,每次涂色时,它随 ...
分类:
其他好文 时间:
2018-08-11 01:27:47
阅读次数:
203