上一页 1 2 3 4 5 6 7 8 ··· 16 下一页
摘要: 树状数组/前缀和 Orz lct1999 好神的做法。。。 先看下暴力的做法:对于区间[l,r],我们依次扫过去,如果这个数是第一次出现,那么我们种类数+1。 我们发现:区间中相同的几个数,只有最左边那个才对答案有贡献。 那么我们O(n)预处理一个next数组,满足a[i]=a[next[... 阅读全文
posted @ 2015-05-19 17:28 Tunix 阅读(236) 评论(0) 推荐(0) 编辑
摘要: KD-Tree 传说中的kd树。。。前去膜拜了一下……写道模板题>_ 12 #include 13 #include 14 #include 15 #include 16 #define rep(i,n) for(int i=0;i=n;--i) 19 #define pb push_back 2... 阅读全文
posted @ 2015-05-19 11:49 Tunix 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 然而UER我也照样跪……第一题 忘了取模sad || 操作符将整个区间分成了一些段,每个手机只会执行其中某一段,执行次数为这一段中&&的个数?+1? ans=ans*num[i]+1 倒着搞了一遍就过了?……然而我并不知道为什么…… 1 //UER 2 A 2 #include 3 #inc... 阅读全文
posted @ 2015-05-18 11:08 Tunix 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 最短路+TSP+最小生成树+倍增LCA+TreeDP第一题 其实是个TSP问题(然而我没发现),但是关键点很少,只有5个,所以用dij+heap分别预处理出来这五个点为源的最短路…… 然后枚举起点 i ,枚举这5个点的经过顺序,然后O(1)处理答案就可以了…… 容易写错的地方是 五个点的标号(... 阅读全文
posted @ 2015-05-18 11:04 Tunix 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 康托展开 裸的康托展开&逆康托展开 康托展开就是一种特殊的hash,且是可逆的…… 康托展开计算的是有多少种排列的字典序比这个小,所以编号应该+1;逆运算同理(-1)。 序列->序号:(康托展开) 对于每个数a[i],数比它小的数有多少个在它之前没出现,记为b[i],$ans=1+\s... 阅读全文
posted @ 2015-05-18 08:45 Tunix 阅读(406) 评论(0) 推荐(1) 编辑
摘要: 枚举+组合数?+DP+数学问题 http://bestcoder.hdu.edu.cn/contests/contest_show.php?cid=582 QAQ许久没打过比赛,来一发BC,结果还是只能做前两题……too young too naive了…… 不过这场比赛前两题被hack&FS... 阅读全文
posted @ 2015-05-17 11:34 Tunix 阅读(311) 评论(0) 推荐(1) 编辑
摘要: 倍增+Floyd 题解:http://www.cnblogs.com/lmnx/archive/2012/05/03/2481217.html 神题啊= =Floyd真是博大精深…… 题目大意为求S到E,恰好经过N条边的最短路径(姑且称为路径吧,虽然好像已经不是了……) 总共只有大约200个... 阅读全文
posted @ 2015-05-16 21:27 Tunix 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 曼哈顿距离与切比雪夫距离 QAQ蒟蒻并不知道切比雪夫距离是什么……并不会做这道题…… 去膜拜了PoPoQQQ大爷的题解:题目大意:给定平面上的n个点,求一个点到这n个点的切比雪夫距离之和最小与3170不同的是这次选择的点无需是n个点中的一个首先将每个点(x,y)变为(x+y,x-y) 这样新点之... 阅读全文
posted @ 2015-05-16 17:35 Tunix 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 字符串Hash+可持久化线段树 好神奇的转化…… 蒟蒻一开始还去想AC自动机去了……然而由于a[i]的范围是小于等于n,怎么也想不出一个时间复杂度合理的方法 膜拜了题解0。0原来是字符串Hash! 首先每个询问的长度都是固定的!K!那么我们就可以看作一个长度为K的数!然后就可以利用字符串... 阅读全文
posted @ 2015-05-16 10:45 Tunix 阅读(242) 评论(0) 推荐(0) 编辑
摘要: Prufer序列/排列组合+高精度 窝不会告诉你我是先做了BZOJ1211然后才来做这题的>_>(为什么?因为我以前不会高精度呀……) 在A了BZOJ 1211和1089之后,蒟蒻终于有信心来写这道神题啦= = 嗯还是先说下做法吧~ …… 还是出门左转去看黄学长的博客吧……我懒得写了…... 阅读全文
posted @ 2015-05-15 21:38 Tunix 阅读(169) 评论(0) 推荐(1) 编辑
摘要: 高精度/递推 Orz Hzwer…… 然而我想多了…… 理解以后感觉黄学长的递推好精妙啊 顺便学到了一份高精度的板子= =233 引用下题解:f[i]=f[i-1]^n+1ans=f[d]-f[d-1]然后加个高精度。。。话说这个数据范围是虚的吧。。。极限数据根本不会做。。 1 /****... 阅读全文
posted @ 2015-05-15 20:26 Tunix 阅读(257) 评论(0) 推荐(1) 编辑
摘要: 蒟蒻的模板库突然发现模板什么的需要存一下了= =因为蒟蒻并没有全部记住……一些算法/数据结构的模板就放自己其他博文的链接了,另一些会在这里直接写下来。以前的我会慢慢整理……今天先写一个→_→(明显还是在偷懒啊喂!能不能靠谱一点啊?)数学相关: 1 void add(int k,int v){ 2 /... 阅读全文
posted @ 2015-05-15 17:49 Tunix 阅读(516) 评论(0) 推荐(0) 编辑
摘要: Prufer序列+组合数学 嗯哼~给定每个点的度数!求树的种数!那么很自然的就想到是用prufer序列啦~(不知道prufer序列的……自己再找找资料吧,这里就不放了,可以去做一下BZOJ1005明明的烦恼) 那么我们令每个点的度数v[i]-1,得到每个节点在prufer序中的出现次数! 现在... 阅读全文
posted @ 2015-05-15 17:44 Tunix 阅读(207) 评论(0) 推荐(1) 编辑
摘要: 数论 Orz iwtwiioi 果然数论很捉鸡>_>完全不知道怎么下手 $$x^2 \equiv 1 \pmod n \rightarrow (x+1)*(x-1)=k*n $$ 所以,我们得到$$n | (x+1)(x-1)$$ 那么有什么用呢?注意到整除是个神奇的关系= =所以我们可以... 阅读全文
posted @ 2015-05-15 09:45 Tunix 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 二分图完美匹配/匈牙利算法 如果a[i][j]为黑点,我们就连边 i->j ,然后跑二分图最大匹配,看是否有完美匹配。 12 #include13 #include14 #include15 #include16 #define rep(i,n) for(int i=0;i=n;--i)19 #... 阅读全文
posted @ 2015-05-15 08:28 Tunix 阅读(195) 评论(0) 推荐(1) 编辑
摘要: 数学期望/线段树 然而又是一道road= =上一道是2750…… 下次不要一看期望题就弃疗么…… 期望题≠不可做题……!! 其实在这题中,期望就是(所有情况下 权值之和)/(总方案数) 因为是等概率抽取区间啊= =2333 然而分母很好搞,直接就能算出来,所以我们要来搞分子…… 分子其... 阅读全文
posted @ 2015-05-14 21:11 Tunix 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 简单写下自己的理解吧……Pack 三种物品的背包: 1. $v(x)=A*x^2-B*x$ 价值随所分配的体积的变化而变化…… 2. 多重背包 3. 完全背包 其实是个傻逼题,因为数据规模小,暴力就能过,然而由于没见过第一种物品的价值函数,加上题目描述不清楚,所以自己傻逼了... 阅读全文
posted @ 2015-05-14 15:21 Tunix 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 树链剖分/dfs序 其实过了【BZOJ】【4034】【HAOI2015】T2以后就好搞了…… 链修改+子树查询+换根 其实静态树的换根直接树链剖分就可以搞了…… 因为其实只有一样变了:子树 如果root在x的子树中(以1为根dfs的时候),那么现在x的子树就变成了整个dfs序中,除去含有r... 阅读全文
posted @ 2015-05-13 20:32 Tunix 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 计算几何/旋转卡壳 从已知点中选出四个使得选出的四边形面积最大,很明显我们应该在凸包上搞。 我一开始的思路是:枚举 i ,找到 i 的对锺点cur1,这两个点将凸包分成了两半,我们在左半中枚举一个 j ,然后在右半中找一个离 j 最远的“对锺点”(可能不是?反正找的是最远……)cur2,然后求c... 阅读全文
posted @ 2015-05-13 17:31 Tunix 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 计算几何/旋转卡壳 学习旋转卡壳请戳这里~感觉讲的最好的就是这个了…… 其实就是找面积最大的三角形?。。。并且满足单调…… 嗯反正就是这样…… 这是一道模板题 好像必须写成循环访问?我在原数组后面复制了一遍点,结果挂了……改成cur=cur%n+1就过了QAQ//其实是不是数组没开够所以复... 阅读全文
posted @ 2015-05-13 16:02 Tunix 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 计算几何/半平面交 本来我是想去写POJ 1755的,然后想起了这道跟它很像的题,但应该是弱化版,所以就先写了这个…… 我们可以发现每个人的总用时,与k是呈一次函数关系的:$time_i=\frac{k}{Vrun_i}+\frac{S-k}{Vride_i}$ 然而我们要找的是某个k,使得$... 阅读全文
posted @ 2015-05-13 11:13 Tunix 阅读(407) 评论(0) 推荐(0) 编辑
摘要: 树链剖分/dfs序 树上单点修改+子树修改+链查询 其实用dfs序做也可以…… 其实树链剖分就是一个特殊的dfs序嘛= =所以树链剖分也可以搞子树~(Orz ZYF) 至于为什么……你看在做剖分的时候不也是dfs下去的?然后只不过是先走重儿子,但本质上也是一个dfs序,所以dfs序能搞的子树... 阅读全文
posted @ 2015-05-12 21:39 Tunix 阅读(484) 评论(0) 推荐(1) 编辑
摘要: 贪心 树上贪心问题……跟APIO2015练习赛的C很像啊…… 我的思路是:从叶子向上考虑,令a[x]表示x这个节点上樱花数量与儿子个数的和(即对于任意的x,都有$a[x]\leq m$)每次从儿子的a值中贪心地选最小的加到当前节点中(当然还要-1),然后就不用管了……因为如果某个儿子不能删去,将... 阅读全文
posted @ 2015-05-12 17:44 Tunix 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 二分+计算几何/半平面交 半平面交的学习戳这里:http://blog.csdn.net/accry/article/details/6070621 然而这题是要二分长度r……用每条直线的距离为r的平行线来截“凸包” 做平行线的方法是:对于向量(x,y),与它垂直的向量有:(y,-x)和(-y... 阅读全文
posted @ 2015-05-12 16:26 Tunix 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 计算几何/半平面交 裸的半平面交,关于半平面交的入门请看神犇博客:http://blog.csdn.net/accry/article/details/6070621 然而代码我是抄的proverbs的…… 大体思路是这样的:(一个增量算法) 维护一个当前的半平面交的点集,每次用一条直线... 阅读全文
posted @ 2015-05-12 11:44 Tunix 阅读(311) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 16 下一页