随笔分类 -  提高历练地

摘要:"入口" 题目的大意就是输出以任意一个字符结尾,既是前缀,又是后缀,且长度不超过总长度的一半的方案书的乘积。 考虑使用kmp 在处理失配数组的同时,处理出来以每个字符结尾的时的,能有多少个前缀和后缀相同的数量。 然后在进行一次类似kmp的匹配,在这次匹配中处理出来答案。 先是为什么要处理多少个前缀和 阅读全文
posted @ 2018-06-30 21:26 Lance1ot 阅读(174) 评论(0) 推荐(0)
摘要:今天我这一台机器好像不知道怎么回事,好像被限速了似的。贼慢 今天晚上还有可能回去上~~ 万恶的 ~~文化课 我好郁闷呀。 不过今天也终于将点双和边双彻底理解了 %%% tarjan "题目入口" 一开始没有考虑割点能存在于不同的点双中。 考虑到了以后又在纠结如何计数233 结果发现竟然是最简单的乘法 阅读全文
posted @ 2018-06-26 18:14 Lance1ot 阅读(414) 评论(0) 推荐(0)
摘要:"爆炸入口" 有一个S串和一个T串,长度均小于1,000,000,设当前串为U串,然后从前往后枚举S串一个字符一个字符往U串里添加,若U串后缀为T,则去掉这个后缀继续流程。 这道题确乎是个很好的联系kmp的题目 结合了栈的思想。通过栈保留匹配时的失配指针的位置,达到分段删除的效果,即可以通过删去中间 阅读全文
posted @ 2018-06-25 14:32 Lance1ot 阅读(136) 评论(0) 推荐(0)
摘要:~~真是6块钱cpu(笑~~ "爆炸入口" 踹树练习(汗 对于二进制异或和弹性,我们可以贪心的来做。 瓶颈在于快速贪心。 我们可以维护一个trie树,储存异或前缀和。每次在trie树上贪心的跑。 正向and反向跑一次,就可以了 cpp include include include using na 阅读全文
posted @ 2018-06-24 21:12 Lance1ot 阅读(186) 评论(0) 推荐(0)
摘要:"P2444 病毒" 明显,这是让我们在trie图上找一个环。 暴力搜索就可以了。 不过我们还需要注意一个 坑点 如果我们当前的后缀是一个病毒的结尾,所以我们要在处理失配指针时还要处理他的后缀是病毒片段。 我觉得这也算是一个写Ac自动机一类题的要注意的坑点吧。 cpp include include 阅读全文
posted @ 2018-06-24 20:24 Lance1ot 阅读(164) 评论(0) 推荐(0)
摘要:"P3740 贴海报" 很显然,这个题是让我们维护一个区间的信息 可以考虑线段树。可是这个题,正向思维可能并不可做。 所以我们考虑逆向思维。 打个比方,你是一名保洁人员。面对已经粘在墙上的,大大小小的广告。你想要将他们撕下来。 而且你是一个有点强迫症的的人(溜 你总是每天快要下班时打扫,而且他们贴小 阅读全文
posted @ 2018-06-24 11:46 Lance1ot 阅读(135) 评论(0) 推荐(0)
摘要:如果我们要统计一个由多个矩形重叠组成的图形的面积。 暴力太麻烦,而计算机又不能想人一样计算,那怎么求解呢? 我们可以使用扫描线fa 想象一下,有一条线,按照一个顺序(从左到右呀,从上到下呀...)扫描一个图形。 我们很容易可以得到,两条最近的相邻线段间,所包含的这一个图形的面积是规整的矩形,又因为这 阅读全文
posted @ 2018-06-20 16:46 Lance1ot 阅读(183) 评论(0) 推荐(1)
摘要:"题目" 带修莫队题。 在询问上多加一个变量,记录是在那次修改之后的。 然后暴力修改。 就没了。 不过有一些修改的小技巧 cpp include include include include using namespace std; const int manx=50010; int read() 阅读全文
posted @ 2018-06-19 20:30 Lance1ot 阅读(198) 评论(0) 推荐(1)
摘要:"P1220 关路灯" 题目描述 某一村庄在一条路线上安装了n盏路灯,每盏灯的功率有大有小(即同一段时间内消耗的电量有多有少)。老张就住在这条路中间某一路灯旁,他有一项工作就是每天早上天亮时一盏一盏地关掉这些路灯。 为了给村里节省电费,老张记录下了每盏路灯的位置和功率,他每次关灯时也都是尽快地去关, 阅读全文
posted @ 2018-06-18 21:22 Lance1ot 阅读(108) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2018-06-09 20:28 Lance1ot 阅读(46) 评论(1) 推荐(2)
摘要:"P1005 矩阵取数游戏" 高精度真好van ~~假的~~ 阅读全文
posted @ 2018-06-05 16:32 Lance1ot 阅读(101) 评论(0) 推荐(0)
摘要:澄茶树列的公式弄我的好恶心呀。 cpp include include include using namespace std; struct node { long long val;//和 long long fir;//首项 long long pub;//公差 }; node t[40010 阅读全文
posted @ 2018-06-03 21:26 Lance1ot 阅读(148) 评论(0) 推荐(0)
摘要:西安段素~~线段树~~的连续取件最大只~~连续区间最大值~~问题模板 cpp include include include using namespace std; struct node { int sum;//总和 int lv;//左起最大值 int rv;//右起最大值 int mv;// 阅读全文
posted @ 2018-06-03 19:28 Lance1ot 阅读(137) 评论(0) 推荐(0)
摘要:"P2574 XOR的艺术" 区间修改就可以使用线段树来进行维护 而且鉴于xor的特性 0 xor 1 = 1 1 xor 1 =0 所以在处理懒标记的时候就可使1的个数和0的个数互换就可以了 也可以使用做差的方法 因为1/0 xor 1 就相当于减1. 上code cpp include incl 阅读全文
posted @ 2018-06-01 20:32 Lance1ot 阅读(147) 评论(0) 推荐(0)
摘要:"源码~~太丑了就不直接放了~~" 注意: 第七个点没有回车,是EOF ac自动机做这题是大材小用,十分鬼畜。 贼坑. 阅读全文
posted @ 2018-06-01 19:26 Lance1ot 阅读(161) 评论(0) 推荐(0)
摘要:233 RT cpp include include include include define inr long long using namespace std; inr exgcd(inr a,inr b,inr &x,inr &y) { if(!b) { x=1; y=0; return 阅读全文
posted @ 2018-05-30 21:37 Lance1ot 阅读(71) 评论(0) 推荐(0)
摘要:"P1040 加分二叉树" 对于有些dp来说,记忆化的正向思维会使人更好理解233. cpp include include include using namespace std; long long memory[50][50]; int root[50][50]; long long data 阅读全文
posted @ 2018-05-21 21:24 Lance1ot 阅读(159) 评论(0) 推荐(0)
摘要:"P2055 [ZJOI2009]假期的宿舍" 建图是件难事233. 阅读全文
posted @ 2018-05-21 21:14 Lance1ot 阅读(159) 评论(9) 推荐(0)
摘要:"P1726 上白泽慧音" 缩点的模板。 因为数据范围很小,所以对于输出方案的判断就可以很水。 cpp include include include include using namespace std; vectorline[5010]; int dfn[5010],low[5010],tim 阅读全文
posted @ 2018-05-21 21:10 Lance1ot 阅读(197) 评论(0) 推荐(0)
摘要:"P1772 [ZJOI2006]物流运输" SPFA+DP 常数奇大的线段树维护那些天不能走 cpp // luogu judger enable o2 include include include include include using namespace std; vectorline[ 阅读全文
posted @ 2018-05-20 08:45 Lance1ot 阅读(116) 评论(0) 推荐(0)