摘要:
bzoj3312[Usaco2013 Nov]No Change 题意: K个硬币,要按顺序买N个物品。当选定买的东西物品序列后,付出钱后,货主是不会找零钱的。现希望通过改变硬币的顺序使买完所需要的东西后,留下的钱越多越好,如果不能完成购买任务,输出-1。k≤16,n≤100000。 题解: 状压d 阅读全文
摘要:
bzoj2060[Usaco2010 Nov]Visiting Cows 拜访奶牛 题意: 给棵树,要求如果取了某个节点就不能取与它相邻的节点,问最多可取几个节点。树的大小≤50000。 题解: 树形dp。令f[i][0]不取i节点,f[i][1]为取i节点,则方程为f[i][0]=sum(max( 阅读全文
摘要:
bzoj1726[Usaco2006 Nov]Roadblocks第二短路 题意: 求无向图点1到n的次短路(长度严格小于最短路)。点数≤5000,边数≤100000。 题解: 求源点为1的单源最短路和源点为n的单源最短路。然后枚举每个点,如果某点到点1和点n的距离和不等于1到n的最短路距离且最小则 阅读全文
摘要:
bzoj3781小B的询问 题意: 给定一个长度为n的序列,序列里的数≤k,m个询问l,r:求sigma(i,1,k)c[i]^2,c[i]为i在[l,r]的出现次数。n,m,k≤50000。 题解: 莫队算法直接上。 代码: 20160906 阅读全文
摘要:
bzoj2850巧克力王国 题意: n个巧克力,每个有牛奶含量,可可含量和美味值。m个人,每个有三个权值a,b,c,如果某个巧克力的牛奶含量*a+可可含量*b<c就可以接受。问每个人能接受的巧克力美味值之和。n,m≤50000。 题解: 对所有巧克力建kd树,树上节点除了维护子树横纵坐标最大最小值还 阅读全文
摘要:
bzoj2648SJY摆棋子 bzoj2716[Violet 3]天使玩偶 题意: 棋盘上有n个棋子,现在有m个操作,一种是加棋子,一种是查询离某个点最近的棋子。n,m≤500000。 题解: 先将已有的棋子建kd树,然后加棋子就直接向kd树插入节点。因为本题数据弱,所以直接插节点不会T,如果是一些 阅读全文
摘要:
bzoj1941[Sdoi2010]Hide and Seek 题意: 平面上n个点,求一个点使得离它最近的点和最远的点离它的曼哈顿距离差最小(若选的点处已有点,则改点不算)。n≤500000 题解: 第一次写kd树,感觉眼睛又瞎了(玄学复杂度)。首先先把所有点横坐标和纵坐标轮流为关键字排序建一个平 阅读全文
摘要:
bzoj2292【POJ Challenge 】永远挑战 题意: 有向图,每条边长度为1或2,求1到n最短路。点数≤100000,边数≤1000000。 题解: 有人说spfa会T,所以我用了dijkstra。不过这不是正解,神犇ZS告诉我正解应该是把所有边长度为2的边拆成两条,orz…… 代码: 阅读全文
摘要:
bzoj2295【POJ Challenge】我爱你啊 题意: 求一个字符串中有多少个"luvletter"(不包括引号)。字符串长度≤100000。 题解: 连kmp都不用…… 代码: 20160905 阅读全文
摘要:
bzoj2296【POJ Challenge】随机种子 题意: 求一个≤10^16的数,使这个数包含123456789且为x的倍数。x≤1000000。 题解: 16-6刚好等于10。因此我们可以直接让所求的数的前10位为1234567890,则只要求出1234567890000000加上什么≤10 阅读全文
摘要:
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][ 阅读全文
摘要:
bzoj2288【POJ Challenge】生日礼物 题意: 给一个序列,求不超过m个连续的部分,使元素和最大。序列大小≤100000 题解: 先把连续的正数和负数合并起来,接着如果正数个数小于m则全选,否则需要确定去掉那个正数或合并哪个正数。初始ans设为所有正数和,将所有的数按绝对值大小放入堆 阅读全文