板子
文章平均质量分 74
Kelisita
别再抱怨东西太难,只是自己不会,仅此而已
展开
-
RMQ板子 求区间最大最小值
PS:需要开两个ST表去存最大和最小值;#include #include #include using namespace std ;const int MAXN = 100010;int a[MAXN];int dpmax[MAXN][20],dpmin[MAXN][20];int mm[MAXN];//初始化RMQ, b数组下标从1开始,从0开始简单修改void max原创 2016-02-06 01:15:02 · 402 阅读 · 0 评论 -
线段树常见套路
线段树就是一颗二叉树,在二叉树上建立区间;所以第一个板子是如何建立一颗树,我喜欢直接建,比较暴力;宏定义虽然慢,但是很方便;#define lson l,m,rt<<1#define rson m+1,r,rtvoid Build(int l,int r,int rt){ if(l==r) { scanf("%d",&MAX[rt]);原创 2016-02-10 14:15:26 · 539 阅读 · 0 评论 -
BFS/DFS常见板子
首先,BFS返回的一定是最短路径;所以用queue存;#include#include#includeusing namespace std;int count1[210][210]//*路径记录器; int visited[210][210];//*探索是否访问 int dir[4][2]={{1,0},{-1,0},{0,1},{0,-1}};//*四方向搜索//*in原创 2016-02-14 14:38:41 · 1269 阅读 · 0 评论 -
HDU 2191 512大地震 【多重背包模板题】
多重背包特征:有N个物品,每个物品有价值,重量,和有限个数;后求在资金尽可能用的情况求出最大购物数量;根据伪代码的模板 写出来的,以后直接可以做板子;Description急!灾区的食物依然短缺! 为了挽救灾区同胞的生命,心系灾区同胞的你准备自己采购一些粮食支援灾区,现在假设你一共有资金n元,而市场有m种大米,每种大米都是袋装产品,其价格不等,并且只能整袋购买。原创 2016-02-20 22:55:59 · 307 阅读 · 0 评论 -
求最长回文串长度板子
#include#includeusing namespace std;int a[10000010];int mannchar(int *p,int n){ int s,e,i,max=0; s=0; while(s<=n) { i=e=s; while(p[s]==p[e])e++; s=e;原创 2016-08-04 22:36:12 · 269 阅读 · 0 评论