06 2017 档案

摘要:一共有n个点,有一些点必须一起被装在背包里,现在给了好多点,问背包能不能装恰好k个点。 用并查集维护各个堆,然后每一堆做一个物品的重量,做01背包即可。 阅读全文
posted @ 2017-06-21 21:15 Kirai 阅读(132) 评论(0) 推荐(0)
摘要:题目链接:https://www.51nod.com/contest/problem.html#!problemId=1299 题意:中文题面。 挺容易想到最小点覆盖的,这么想题目的意思就是希望找到几个点,保证让某些点不能与叶子连通。问最少覆盖几个点可以达到这个目的,要求的某些点不能作为覆盖的点。 阅读全文
posted @ 2017-06-20 16:27 Kirai 阅读(170) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/contest/813/problem/E 题意:n个人,每一个人有一个id。现在排成一排,现在要在n个人中的[l,r]区间内挑选,使得每一个id的出现次数不超过k。问每一个区间最多能选多少人。强制在线。 学习了一个问题转化的巧妙思路,考虑每一个 阅读全文
posted @ 2017-06-18 15:19 Kirai 阅读(172) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/contest/816/problem/B 题意:一个大区间被n条线覆盖,接下来有q次询问,询问[l,r]内有多少个点被>=k个线覆盖。 区间两头左闭右开打标记,左边+1右边-1,维护这个标记的前缀和,再维护一个前缀和,找到上一个前缀和里>=k的 阅读全文
posted @ 2017-06-18 11:55 Kirai 阅读(246) 评论(0) 推荐(0)
摘要:题目链接:http://acm.fzu.edu.cn/problem.php?pid=2203 二分答案,即二分m表示第m个不会被击中,那么被击中的炮弹为第m+1个。每次check就行了。 阅读全文
posted @ 2017-06-16 13:38 Kirai 阅读(133) 评论(0) 推荐(0)
摘要:题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3261 题意:n个星球,起始有m个联通的条件。接下来会有q次查询,2种,一种是摧毁x和y的联通,另外一种是查询与x联通的星球里p大、id最小的星球。 离线,首先存下初 阅读全文
posted @ 2017-06-16 11:05 Kirai 阅读(153) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5057 分块,维护每块中每位的每个数位出现的次数。 阅读全文
posted @ 2017-06-13 20:34 Kirai 阅读(270) 评论(0) 推荐(0)
摘要:题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2002 分块,每块中的每一个点除了自己能跳跃的距离外,还要额外维护两个值:to(i):i跳出本块到其他块的id,st(i):i跳出本块所需要的次数。 每次暴力更新本块内的所有值,查询的时候一直 阅读全文
posted @ 2017-06-13 19:38 Kirai 阅读(190) 评论(0) 推荐(0)
摘要:之前调试程序都是在本机用的单机模式,体系结构老师要求实验要用完全分布模式的环境运行程序。 不想用虚拟机,完全是出于对界面的不习惯。于是使用了docker。 脚本会与之前的hadoop环境搭建有重叠。 参考了博客:http://tashan10.com/yong-dockerda-jian-hadoo 阅读全文
posted @ 2017-06-12 17:41 Kirai 阅读(232) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4391 题意:初始n个点有不同颜色,两种操作:1:区间染色,2:问区间内某个颜色的出现次数。 线段树维护点,在此基础上分块,发现应该是卡了线段树的log了。在想办法优化掉。 TLE代码: 阅读全文
posted @ 2017-06-07 22:00 Kirai 阅读(207) 评论(0) 推荐(0)
摘要:题目链接:https://vjudge.net/problem/UVA-12003 题意:n个数,每次查询[l,r]区间内比v小的数的个数,并且要更新一个位置为另一个值,强制在线。 首先分块,分块后对每一个块排序,查询遇到块的时候二分找比这个值小的,两端则枚举。 更新的时候,修改一个值,冒泡就行了。 阅读全文
posted @ 2017-06-07 21:07 Kirai 阅读(150) 评论(0) 推荐(0)
摘要:题目链接:http://poj.org/problem?id=3468 区间查询,区间更新。额外用一个add维护某个块内所有值的更新情况,查询的时候加上这个值。 阅读全文
posted @ 2017-06-07 16:51 Kirai 阅读(124) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/contest/813/problem/C 题意:两个人在一棵树上走,A在树根,B在另一个点。A希望尽可能快地找到B,B希望尽可能慢地被找到。问这两个人走过的点的数量和。 考虑两个人所在链的中点,从这个中点向下找最深的那个点就是B希望去的点,A也 阅读全文
posted @ 2017-06-07 13:06 Kirai 阅读(207) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/contest/813/problem/B 题意:给定x,y,l,r,求[l,r]区间内满足n!=x^a+y^b的最长子序列的长度。2<=x,y<=1e18 稍微分析下会发现,这个x^a,y^b中a、b不会太大,因为2^63大约为1e19。 枚举 阅读全文
posted @ 2017-06-07 13:03 Kirai 阅读(349) 评论(0) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1754 题意:老题了,现场赛总是有很多题,虽然想不到正解,但是服务器都比较劲,用分块暴力可能会过。分块这东西一直知道,但是从来没写过没练过,比较难的题用分块做的特点就是思路简单,但是代码比较复杂。 这题很 阅读全文
posted @ 2017-06-06 22:59 Kirai 阅读(153) 评论(0) 推荐(0)
摘要:题目链接:http://115.231.222.240:8081/JudgeOnline/problem.php?cid=1005&pid=11 这题不会,看了柠檬巨的题解才知道可以筛出来。 枚举a、b,然后求下m最小能是多少,可以满足原式为整数。可以用(a*b)-(a*a+b*b)%(a*b)求。 阅读全文
posted @ 2017-06-05 19:05 Kirai 阅读(158) 评论(0) 推荐(0)
摘要:题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=4808 题意:其实就是找出一个点集的子集,使得这个子集中的点互不相连。求这个子集规模最大。 就是最大独立集。点好多,有200*200个。所以用dinic优化了下。 最大独立集=N-最大匹配,最 阅读全文
posted @ 2017-06-05 16:09 Kirai 阅读(252) 评论(0) 推荐(0)
摘要:题目链接:http://codeforces.com/contest/808/problem/F 题意:给出n个三元组,和一个整数k。包括三个属性p c l。要求选出的几个三元组满足∑pi>=k,并且还要满足: 选出的任意两个ci+cj不是素数。 额外有一个变量lv,不能选择li > lv的三元组。 阅读全文
posted @ 2017-06-05 13:41 Kirai 阅读(228) 评论(0) 推荐(0)
摘要:题目链接:http://115.231.222.240:8081/JudgeOnline/problem.php?cid=1005&pid=12 题意:中文题面。 假如不限定叶子数的话,问题就是求二叉树形态数,可以每次枚举节点数,以后来的节点为根,左右子树的形态数做乘法原理得到,就是卡特兰数。 这里 阅读全文
posted @ 2017-06-03 14:48 Kirai 阅读(224) 评论(0) 推荐(0)
摘要:题目链接:http://115.231.222.240:8081/JudgeOnline/problem.php?cid=1005&pid=4 题意:把一个数组拆成两部分,使得两个集合分别的和的差的绝对值最小。 做过类似的,用01背包,求sum/2容量下的最大价值,这样可以拆成两个集合,并且符合题意 阅读全文
posted @ 2017-06-03 12:20 Kirai 阅读(183) 评论(0) 推荐(0)
摘要:题目链接:http://115.231.222.240:8081/JudgeOnline/problem.php?cid=1005&pid=7 题意:中文题面。 手动画一下会发现所求边必然存在于最大生成树上,那么就可以首先构造一棵最大生成树。 问题转化成一棵树上求两个点之间的链上的最短边,用倍增lc 阅读全文
posted @ 2017-06-02 22:00 Kirai 阅读(403) 评论(2) 推荐(0)
摘要:题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4417 题意:给定n个数和q次询问,每次询问[l,r]区间内不比k大的数字的个数。 直接上归并树,每次查询直接查区间内小于等于k的数的个数,二分即可。 用数组写了个,快了不少。 阅读全文
posted @ 2017-06-01 10:33 Kirai 阅读(173) 评论(0) 推荐(0)