上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 16 下一页
摘要: 给你一个凸多边形,问在里面距离凸边形最远的点。方法就是二分这个距离,然后将对应的半平面沿着法向平移这个距离,然后判断是否交集为空,为空说明这个距离太大了,否则太小了,二分即可。#pragma warning(disable:4996)#include #include #include #inclu... 阅读全文
posted @ 2014-05-05 23:19 chanme 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 题意就是给你很多个半平面,求半平面交出来的凸包的面积。半平面交有O(n^2)的算法,就是每次用一个新的半平面去切已有的凸包,更新,这个写起来感觉也不是特别好写。另外一个O(nlogn)的算法是将半平面交极角排序,然后用一个双端队列去维护半平面交,每次加入一个半平面,根据之前的交点的位置退掉半平面,方... 阅读全文
posted @ 2014-05-05 00:18 chanme 阅读(760) 评论(0) 推荐(0) 编辑
摘要: 之前mark下来的一道题,今天填一下坑。题意是这样子的。给你一棵边上有权的树。然后有树上两点(u,v)的路径有n*(n-1)条,路径(u,v)的权值是边权的xor. 然后下面有m个询问,询问你n*(n-1)条路径中的第k大是多少。(k=k,就往匹配到1的方向走,否则就往0走,然后对应的k减去相应的值... 阅读全文
posted @ 2014-05-01 23:08 chanme 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 题意:现在有n个课程,每个课程有一定的参与人数,然后每个课程有开始时间和结束时间ai,bi.而且给定了一个矩阵clean(ij),表示的是上完i课程需要clean[i][j]的时间打扫卫生才能继续上j课程。也就是说如果上完i课程要上j课程就需要满足条件b[i]+clean[i][j]j'. 然后源点... 阅读全文
posted @ 2014-04-29 20:58 chanme 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 今天学了一下传说中的解决离线询问不修改的一种算法。题目的意思非常简单,就是询问在一个[L,R]区间里的取两个物品,然后这两个物品颜色相同的概率。其实就是对于每种颜色i,这个区间里对应的个数cnt[i],那么答案就应该是 sigma (cnt[i]*cnt[i-1]) / (R-L+1)*(R-L).... 阅读全文
posted @ 2014-04-23 00:21 chanme 阅读(927) 评论(1) 推荐(2) 编辑
摘要: 看了别人写的AC自动机,瞬时觉得自己写的好难看,于是决定改写一下,贴一下模板,以后备用#define maxn 220000#define ll long longint n, m;struct Trie{ Trie *fail, *go[26]; bool ter; void init(){ m... 阅读全文
posted @ 2014-04-17 09:53 chanme 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 题意:给你n个禁止串,然后你只能用字符表的前m个字符去写一个无限长的串,要求是不能包含禁止串,而且串在后面不能出现循环比赛的时候想的是先建一个自动机,然后将自动机确定化,不能到达的状态全部弄出来。但是对于剩下的状态就卡住了,我怎么才能知道这些状态会构成循环呢?后来看了别人的代码,看到了强连通分量,我... 阅读全文
posted @ 2014-04-17 00:02 chanme 阅读(430) 评论(0) 推荐(0) 编辑
摘要: 题意:有n个boss,m种武器,每种武器选用的时候需要有一定的花费ci,然后这个武器可以消灭掉其中一些BOSS,问你消灭完所有的BOSS,需要的最少花费是多少。当时比赛的时候,看到这题以为是什么网络流的题,一种熟悉的感觉,后来才发现,购买一次武器可以消灭掉那么多怪物才不是什么费用流呢。赛后得知这个叫... 阅读全文
posted @ 2014-04-16 22:05 chanme 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 下面的代码99%参考了这个网站http://www.cnblogs.com/183zyz/archive/2011/08/07/2130193.html人生的第一道DLX肯定是需要作一些参考的啦。题意:给你N个城市,M个雷达,你要在其中选K个,问当半径最小是多少的时候可以覆盖到所有的N个城市。做法:... 阅读全文
posted @ 2014-04-13 23:33 chanme 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 补一下一些小盲区,譬如simpson这种数值积分的方法虽然一直知道,但是从未实现过,做一道例题存一个模板。#pragma warning(disable:4996)#include#include#include#include#include#includeusing namespace std;double a, b, l, r;double sqr(double x){ return x*x;}double f(double x){ return b / a*sqrt(sqr(a) - sqr(x));}double simpson(double l, double r){ return 阅读全文
posted @ 2014-04-11 21:42 chanme 阅读(200) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 16 下一页