双指针
SC.ldxcaicai
我很菜=_=
展开
-
2018.08.17 bzoj4653: [Noi2016]区间(线段树+尺取法)
传送门 将坐标离散化之后直接用双指针+线段树维护。 其实就是说只要目前所有点的被覆盖次数是大于等于m的就移动左指针删除区间更新答案,否则移动右指针加入区间更新答案。 话说忘记排序以及建树的时候参数带错是几个意思?? 代码: #include<bits/stdc++.h> #define N 500005 #define lc (p<<1) #define rc (...原创 2018-08-17 17:33:29 · 179 阅读 · 0 评论 -
2018 09.23 挖掘机(二分答案)
描述 派了一群疯狂伊文成功摧毁敌军的碉堡后, L终于得到了他想要的挖掘机,于是开始 情不自禁地挖掘。 L依旧把地面看作连续的 N 个格子。由间谍传回的情报,敌军在这些格子中的每一个 里都埋有一颗地雷,且第 i 格中地雷的种类为 ti。 ti 为一个 1 到 M 之间的整数,并且第 i 类雷 的重量均为 wi。 为了为我军的坦克开辟前进的道路,当然也为了使用自己的挖掘机, L 开始愉快地扫 雷(确切...原创 2018-09-23 14:27:19 · 160 阅读 · 0 评论 -
2018.10.10 bzoj1293: [SCOI2009]生日礼物(双指针)
传送门 把所有点按坐标排序,用尺取法(双指针)跑一遍就行了。 代码: #include<bits/stdc++.h> #define N 1000005 using namespace std; inline int read(){ int ans=0; char ch=getchar(); while(!isdigit(ch))ch=getchar(); while(isdi...原创 2018-10-10 10:16:17 · 177 阅读 · 0 评论 -
poj3294 Life Forms(后缀数组+双指针)
传送门 后缀数组经典题目。 我们先把所有的字符串都接在一起。 然后求出hththt数组和sasasa数组。 然后对于sasasa数组跑双指针统计答案。 如果双指针包括进去的属于不同字符串的数量达到了题目给出的限制我们就更新答案并不断右移左指针。 如果没有达到限制就一直右移右指针。 代码: #include<iostream> #include<cstdio> #includ...原创 2018-11-28 17:42:09 · 157 阅读 · 0 评论