水题,逆向做+优先级队列。 1 /* 2385 */ 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 #include <map> 6 #include <queue> 7 #include <set> 8 #incl
分类:
其他好文 时间:
2016-02-01 01:37:51
阅读次数:
191
综合性很强的题目。存在环,可以用tarjan处理,然后需要求LCA。并查集+RMQ可以搞。非常不错的题目。 1 /* 4297 */ 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 #include <map> 6 #
分类:
其他好文 时间:
2016-01-30 18:23:08
阅读次数:
163
这题用线段树就MLE。思路是逆向思维,然后每染色一段就利用并查集将该段移除,均摊复杂度为O(n*m)。 1 /* 4056 */ 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 #include <map> 6 #in
分类:
其他好文 时间:
2016-01-30 17:44:54
阅读次数:
195
DP:DP[len][k][i][j] 再第len位,第一个数len位为i,第二个数len位为j,和的第len位为k每一位能够从后面一位转移过来,能够进位也能够不进位A Famous EquationTime Limit: 2000/1000 MS (Java/Others)Memory Limit...
分类:
其他好文 时间:
2016-01-26 21:48:49
阅读次数:
236
策略 : 观察可知,1 或者是能被2整除的数都不会求余等于1, 仅仅须要推断一下是不是除1之外的奇数,在依次查找2^x(mod(n)) ?= 1就能够了难点:假设每次都是在原来的基础上×2 再推断 会超时。这时候,要用一下同余定理就能够了AC by SWS;题目链接:http://acm.hdu.e...
分类:
其他好文 时间:
2016-01-26 18:05:50
阅读次数:
150
显然需要贪心,重叠越长越好,这样最终的串长尽可能短。需要注意的是,不要考虑中间结果,显然是个状态dp。先做预处理去重,然后求任意一对串的公共长度。 1 /* 3828 */ 2 #include 3 #include 4 #include 5 #include 6 #includ...
分类:
其他好文 时间:
2016-01-24 22:13:27
阅读次数:
259
数位DP。需要注意的是需要特殊处理前导0,另外连续的==匹配,不要计重了,尽量贪心的匹配掉。 1 /* 3886 */ 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include...
分类:
其他好文 时间:
2016-01-20 20:49:12
阅读次数:
228
PE的注意,如果没有满足条件的不输出空格。简单模拟,暴力解。 1 /* */ 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #i...
分类:
其他好文 时间:
2016-01-16 20:53:52
阅读次数:
254
这就是个简单的bfs。真没什么好说的,三维的状态就可以了。每次预处理一下monster的位置,然后再恢复。 1 /* 1924 */ 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #...
分类:
其他好文 时间:
2016-01-12 01:16:28
阅读次数:
297
HDOJ:2161 1 #include 2 #include 3 const int MAXN = 16100; 4 bool prime[MAXN]; 5 void init(){ 6 memset(prime,true,sizeof(pr...
分类:
其他好文 时间:
2016-01-10 20:02:12
阅读次数:
229