自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Substrings HDU - 1238

点击打开链接二分长度 然后枚举第一个串的所有子串 用kmp判断其是否为其他所有串的子串#include <bits/stdc++.h>using namespace std;const int maxn=1e2+10;char ch[maxn][maxn];int len[maxn],nxtt[maxn];char t[maxn];int n;void...

2018-01-31 10:39:11 241

原创 剪花布条 HDU - 2087

点击打开链接kmp存模板求出现次数 不可重叠 (可重叠见注释)推荐博客点击打开链接#include <bits/stdc++.h>using namespace std;const int maxn=1e3+10;int nxtt[maxn],nxts[maxn];char ch1[maxn],ch2[maxn];void kmp(char *t,int...

2018-01-29 11:04:08 234

原创 Aragorn's Story HDU - 3966 + Query on a tree SPOJ - QTREE

树链剖分模板题点击打开链接基于点权 链修改单点查询点击打开链接基于边权 单点修改链查询#include <bits/stdc++.h>using namespace std;const int maxn=5e4+10;struct node{ int v,next;};node edge[2*maxn];int tree[4*maxn];i...

2018-01-28 11:40:58 216

原创 Ferry Lanes POJ - 3377

点击打开链接一开始直接spfa T了。。再看这个图发现有猫腻 2e6个点分列两侧 且只与东西两点还有河对岸的点有边 那起点 p 到任意一个点 i 的最短路径(默认 i 在p东边)只有两种情况1 从p一直向东 途中可能纵向过几次河 但横向方向不变2 从p先向西再向东 通过迂回路线来回避一些耗时高的路段 且最多迂回一次 多了必定走重复路线为了保证满足第二种情况 首先从p向西...

2018-01-27 16:17:34 260

原创 Mosaic HDU - 4819

点击打开链接二维线段树模板题 二维与一维线段树都是一个道理 即把大的区域或区间分成更小的部分 难在理解二维中大区域和小区域之间的关系可以当作树套树来想 二维中每个小区间都代表一棵一维线段树 确定二维中每一个小区间就是确定了一个区域有哪些行 再确定对应一维线段树中某个区间 就是确定了一个区域有哪些列 #include &lt;stdio.h&gt;#include &lt;cst...

2018-01-25 17:46:55 207

原创 Matrix POJ - 2155

点击打开链接二维线段树模版题这篇博客的染色和翻转问题说的很明白点击打开链接 之前一直没有考虑这么细· #include &lt;cstdio&gt;#include &lt;cstring&gt;#include &lt;algorithm&gt;using namespace std;int tree[4010][4010];int n,ans;void upd...

2018-01-22 09:45:54 186

原创 Queue HDU - 5493

点击打开链接 每个人只记得前边或者后边有多少人比自己高 对于最高的人来说比他高的人不存在 次高的人最多有一个比他高 次次高的人最多有两个比他高。。。以此类推 只要有人超出这个范围就是impossible 而只要每个人都不超出这个范围 那这个队列一定存在(每个人都不超范围&lt;=&gt;队列存在)因为题目给的条件是比某人高的人在其前或后有多少 且每个人的高度是唯一的 所以我们要按身高从...

2018-01-21 17:37:43 231

原创 Assign the task HDU - 3974

点击打开链接利用dfs序将多叉树映射到线段树上对于任意一个节点 在先序序列中每个子节点都在其后 而在后序序列中每个子节点都在其前 这样就确定了多叉树的一棵子树在线段树中的左右区间 #include &lt;bits/stdc++.h&gt;using namespace std;struct node1{ int l; int r; int laz...

2018-01-20 11:52:42 203

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除