02 2015 档案

摘要:关于Manacher算法,网上介绍已经很全面 这里说一下自己的理解 这里的rad数组:radi表示以以位置i为中心的最长回文串的回文半径(不包括i这个点)。 朴素的思想大概是从每个点出发像两边扩展,大概O(n2)复杂度?据说Manacher 阅读全文
posted @ 2015-02-26 16:48 Showson 阅读(431) 评论(0) 推荐(0) 编辑
摘要:为了搞SCOI的几道题先做水数位。之前听过课,半懂不懂吧,现在清楚了些。这类题一般满足区间减法,即只需要我们求出(1,n)即可,然后打表也是为了sovle(DataType)服务。先想好怎么计算,再去想怎么打表。计算是一般存在这样的问题,就是比如n=abcdef,当a=6时,6开头的不能全算,那就只... 阅读全文
posted @ 2015-02-21 20:12 Showson 阅读(265) 评论(0) 推荐(0) 编辑
摘要:---恢复内容开始---又是一道裸数据结构题。之前受序列操作的蛋疼写法影响,只用一个tag,不知道怎么记,之后看了下别人的,终于领悟要用两个tag,一个add,一个mul,维护相当简单,想清楚就行。简单说下解法。add mul就是一般的将[L,R]split出来然后打tag.mulx:我将[L,R+... 阅读全文
posted @ 2015-02-14 15:41 Showson 阅读(245) 评论(0) 推荐(0) 编辑
摘要:以前一直用__int64来识别windows还是Linux,可是发现HDU好像不认看到wzy用的UNIX可以。UNIX是Linux下定义的,具体是什么可以去百度。那么就可以#ifdef UNIX #define LL "%lld"#else #define LL "%I64d"#endi... 阅读全文
posted @ 2015-02-14 13:33 Showson 阅读(387) 评论(0) 推荐(0) 编辑
摘要:终于用自己的方法水过去了。本地测慢的一组要三四秒,一共要十几秒,BZOJ貌似一共只让跑6s,于是就还T着的。一开始没看n来维护每个区间,每产生一个区间,就把他扔到set里,然后按r排序不难发现,对于x,>=x的第一个r所在的区间一定包含它。然后找到split即可……#include#include#... 阅读全文
posted @ 2015-02-10 17:23 Showson 阅读(343) 评论(0) 推荐(0) 编辑
摘要:最近很不对啊=w= 写程序全是bug啊ans数组开小了竟然一直不知道,小数据没问题大数据拍不过,交上去RE蛋疼半天这个主要把每次询问拆成3个询问。#include#include#include#include#include#define dout printfusing namespace st... 阅读全文
posted @ 2015-02-07 14:46 Showson 阅读(283) 评论(0) 推荐(0) 编辑
摘要:设直线PC:y1=P+tv,QA:y2=Q+tw,u=Q-P可以看出 y1=y2时,y1中t1=cross(w,u)/cross(v,w),y2中,t2=cross(v,u)/cross(v,w); 阅读全文
posted @ 2015-02-06 20:19 Showson 阅读(353) 评论(2) 推荐(0) 编辑
摘要:这题之前度娘上没有CDQ分治做法,gerwYY出来以后写了一个。不过要sort3遍,常数很大。gerw说可以类似划分树的思想优化复杂度,但是蒟蒻目前不会划分树(会了主席树就懒得去弄了)。嗯 将memset改成手动clear会快很多。还有就是第一维相同的情况,划分为两个不存在第一维相同的两个区间即可。... 阅读全文
posted @ 2015-02-06 18:41 Showson 阅读(212) 评论(0) 推荐(0) 编辑
摘要:= =原来复杂度还是nlog^2(n) Orz 被喷了 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 const int D=3e6; 9 char in[D],*I=in,out... 阅读全文
posted @ 2015-02-03 12:47 Showson 阅读(242) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示