摘要: bzoj1150[CTSC2007]数据备份Backup 题意: n个地方,在其中找k对地方,每个地方只属于一对。定义一对的费用为两个地方的距离,求最小费用总和。 题解: 把所有相邻地方距离放入一个集合中,每次取出最小的那个距离x,然后将相邻两边的距离l,r合并成l+r-x。如果这个x缺一边相邻,则 阅读全文
posted @ 2016-09-04 16:06 YuanZiming 阅读(239) 评论(0) 推荐(0) 编辑
摘要: bzoj3687简单题 题意: 给个集合,求所有子集的元素和的异或和。集合元素个数≤1000,整个集合的元素和≤2000000 题解: 用bitset维护每个子集元素和的个数是奇数还是偶数。每次读入一个元素,则bs^=bs<<a[i],意思是将之前所有的子集和加上这个新的元素,然后与已有的子集和异或 阅读全文
posted @ 2016-09-04 15:26 YuanZiming 阅读(207) 评论(0) 推荐(1) 编辑
摘要: bzoj1782[Usaco2010 Feb]slowdown 慢慢游 题意: n只奶牛各有一个目的地。它们按顺序从根节点到达自己的目的地,如果当前奶牛经过了其它已经到达的奶牛的目的地,就要放慢一次脚步。求每只奶牛要放慢多少次脚步。n≤100000。 题解: 对树dfs,求每个节点的进栈时间和出栈时 阅读全文
posted @ 2016-09-04 15:19 YuanZiming 阅读(246) 评论(0) 推荐(0) 编辑
摘要: bzoj2789[Poi2012]Letters 题意: 给出两个长度相同且由大写英文字母组成的字符串A、B,保证A和B中每种字母出现的次数相同。现在每次可以交换A中相邻两个字符,求最少需要交换多少次可以使得A变成B。长度≤1000000 题解: 把A串中所有字母替换成该字母在B串中的位置,如果有相 阅读全文
posted @ 2016-09-04 15:12 YuanZiming 阅读(204) 评论(0) 推荐(0) 编辑
摘要: bzoj3940[Usaco2015 Feb]Censoring 题意: 有一个S串和一大堆T串,不断地在S串里找最早出现的T串,然后将其删除。S串≤100000,T串总长度≤100000。 题解: 对所有T串建AC自动机,然后同bzoj3942。注意,本题的AC自动机必须利用所有fail函数建成一 阅读全文
posted @ 2016-09-04 14:52 YuanZiming 阅读(279) 评论(0) 推荐(0) 编辑