上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 42 下一页
摘要: bzoj1941[Sdoi2010]Hide and Seek 题意: 平面上n个点,求一个点使得离它最近的点和最远的点离它的曼哈顿距离差最小(若选的点处已有点,则改点不算)。n≤500000 题解: 第一次写kd树,感觉眼睛又瞎了(玄学复杂度)。首先先把所有点横坐标和纵坐标轮流为关键字排序建一个平 阅读全文
posted @ 2016-09-11 15:17 YuanZiming 阅读(397) 评论(0) 推荐(0) 编辑
摘要: bzoj2292【POJ Challenge 】永远挑战 题意: 有向图,每条边长度为1或2,求1到n最短路。点数≤100000,边数≤1000000。 题解: 有人说spfa会T,所以我用了dijkstra。不过这不是正解,神犇ZS告诉我正解应该是把所有边长度为2的边拆成两条,orz…… 代码: 阅读全文
posted @ 2016-09-11 15:00 YuanZiming 阅读(173) 评论(0) 推荐(0) 编辑
摘要: bzoj2295【POJ Challenge】我爱你啊 题意: 求一个字符串中有多少个"luvletter"(不包括引号)。字符串长度≤100000。 题解: 连kmp都不用…… 代码: 20160905 阅读全文
posted @ 2016-09-11 14:56 YuanZiming 阅读(157) 评论(0) 推荐(0) 编辑
摘要: bzoj2296【POJ Challenge】随机种子 题意: 求一个≤10^16的数,使这个数包含123456789且为x的倍数。x≤1000000。 题解: 16-6刚好等于10。因此我们可以直接让所求的数的前10位为1234567890,则只要求出1234567890000000加上什么≤10 阅读全文
posted @ 2016-09-11 14:53 YuanZiming 阅读(167) 评论(0) 推荐(0) 编辑
摘要: bzoj2287【POJ Challenge】消失之物 题意: 给出n,m,求用除了第i(1≤i≤n)个之外的物品填满容量为j(1≤j≤m)的背包的方法数。n,m≤2000。 题解: 令f[n][j]为所有物品可用填满j的方案数,F[i][j]为题目所求,则当j<a[i]时F[i][j]=f[n][ 阅读全文
posted @ 2016-09-11 14:44 YuanZiming 阅读(192) 评论(0) 推荐(0) 编辑
摘要: bzoj2288【POJ Challenge】生日礼物 题意: 给一个序列,求不超过m个连续的部分,使元素和最大。序列大小≤100000 题解: 先把连续的正数和负数合并起来,接着如果正数个数小于m则全选,否则需要确定去掉那个正数或合并哪个正数。初始ans设为所有正数和,将所有的数按绝对值大小放入堆 阅读全文
posted @ 2016-09-11 14:36 YuanZiming 阅读(156) 评论(0) 推荐(0) 编辑
摘要: bzoj1150[CTSC2007]数据备份Backup 题意: n个地方,在其中找k对地方,每个地方只属于一对。定义一对的费用为两个地方的距离,求最小费用总和。 题解: 把所有相邻地方距离放入一个集合中,每次取出最小的那个距离x,然后将相邻两边的距离l,r合并成l+r-x。如果这个x缺一边相邻,则 阅读全文
posted @ 2016-09-04 16:06 YuanZiming 阅读(241) 评论(0) 推荐(0) 编辑
摘要: bzoj3687简单题 题意: 给个集合,求所有子集的元素和的异或和。集合元素个数≤1000,整个集合的元素和≤2000000 题解: 用bitset维护每个子集元素和的个数是奇数还是偶数。每次读入一个元素,则bs^=bs<<a[i],意思是将之前所有的子集和加上这个新的元素,然后与已有的子集和异或 阅读全文
posted @ 2016-09-04 15:26 YuanZiming 阅读(208) 评论(0) 推荐(1) 编辑
摘要: bzoj1782[Usaco2010 Feb]slowdown 慢慢游 题意: n只奶牛各有一个目的地。它们按顺序从根节点到达自己的目的地,如果当前奶牛经过了其它已经到达的奶牛的目的地,就要放慢一次脚步。求每只奶牛要放慢多少次脚步。n≤100000。 题解: 对树dfs,求每个节点的进栈时间和出栈时 阅读全文
posted @ 2016-09-04 15:19 YuanZiming 阅读(252) 评论(0) 推荐(0) 编辑
摘要: bzoj2789[Poi2012]Letters 题意: 给出两个长度相同且由大写英文字母组成的字符串A、B,保证A和B中每种字母出现的次数相同。现在每次可以交换A中相邻两个字符,求最少需要交换多少次可以使得A变成B。长度≤1000000 题解: 把A串中所有字母替换成该字母在B串中的位置,如果有相 阅读全文
posted @ 2016-09-04 15:12 YuanZiming 阅读(206) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 42 下一页