- 博客(222)
- 收藏
- 关注
原创 欧拉回路学习总结
欧拉回路学习总结 理解:设G= (V, E)是一个图。欧拉回路 图G中经过每条边一次并且仅一次的回路称作欧拉回路。欧拉路径 图G中经过每条边一次并且仅一次的路径称作欧拉路径。欧拉图 存在欧拉回路的图称为欧拉图。半欧拉图 存在欧拉路径但不存在欧拉回路的图称为半欧拉图。 思想: 首先明确一点,如果原图存在孤立点,那么我们去除孤立点不会对答案有所影响,然后我们
2017-01-29 20:33:34 745
原创 上下界网络流学习总结
上下界网络流学习总结:导入:一般的,定义一个网络是一个加权的有向图G = (V, E, C), E中的每条弧 (u, v)都有一个容量上界 C(u, v) >= 0。如果人为的规定V中的两个点 s, t,其中 s没有入度而 t 没有出度; 并为 E 中的每条弧 (u, v)赋予一个值 f(u, v) >= 0, f 满足以下两个条件:1、除
2017-01-15 15:39:13 443 5
原创 2-SAT学习总结
2-SAT 图论算法: 理解:给定一个布尔方程,判断是否存在一组布尔变量的取值方案,使得整个方程值为真的问题,被称为布尔方程的可满足性问题(SAT) 。SAT 问题是NP 完全的,但对于一些特殊形式的SAT 问题我们可以有效求解。我们将下面这种布尔方程称为合取范式: 其中称为文字,它是一个布尔变量或其否定。像这样用连接的部分称为子句。如果合取范式的每个子句中
2017-01-15 12:52:58 496
原创 BZOJ1269 文本编辑器Editor
BZOJ 1269文本编辑器Editor解析:BZOJ1507加强版,首先是数据加强,然后是多了一个reverse,似乎没什么,但是这意味着你需要加上一系列的pushdown······千万不要把pushdown位置搞错,千万不要多打,千万不要少打,不要作死。Source:#include #include #include #include #
2017-01-04 20:07:20 276
原创 BZOJ1507 Editor
BZOJ 1507 Editor解析:比较简单的区间操作, 但是因为操作很多所以比较不想写啊,最大的作用就是熟悉模板,熟悉,再熟悉。注意输出一个区间时,先select提取区间然后dfs获得中序遍历输出即可, 但是注意判定是否为空结点或者是边界。Source:#include#include#include#include#include#in
2017-01-04 20:02:07 254
原创 Codevs4655 序列终结者
Codevs4655序列终结者解析:赤裸裸的Splay维护三种操作即可, 只要注意模板不错就没有问题了。Source:#include#include#include#include#include#include#includeusing namespace std;inline void R(int &v){ char
2017-01-04 19:50:47 264
原创 BZOJ3506 排序机械臂
BZOJ 3506排序机械臂解析:赤裸裸的区间翻转+1, 这一次还需要维护一个区间最小值,然后还要注意Splay的中序遍历是不会变的, 所以我们将结点x旋转到根后,它当前的rank就是在原序列中的编号,直接输出即可。Source:#include #include #include #include #include #include
2017-01-04 19:43:32 287
原创 BZOJ3223 文艺平衡树
BZOJ 3223文艺平衡树解析:赤裸裸的区间翻转, 不写Splay还写啥, 可以当成标准的Splay区间翻转的板,直接训练敲板吧。Source:#include#include#include#include#include#include#includeusing namespace std;int cnt;inline vo
2017-01-04 19:04:01 246
原创 BZOJ1588 营业额统计
BZOJ 1588营业额统计解析:题目不难,不过讲道理这完全用不上Splay, 听某STL大神说,可以轻松搞定, 但是因为今天是搞Splay,那我们还是乖乖打板吧, 就是单点修改,查询前驱后继即可。Source:#include#include#include#include#include#include#includeusing name
2017-01-04 18:59:25 339
原创 BZOJ1503 郁闷的出纳员
BZOJ 1503郁闷的出纳员解析:题目不难,算是Splay区间操作入门题,主要就是考虑每次减薪操作时, 直接将当前的薪水小于min限制的人员全部删掉即可,加薪的时候直接在root处打上tag然后在合适的时候进行pushdown即可,注意select单个node的时候,一定样pushdown(),不然会WA飞.Source:{CSDN
2017-01-04 18:44:07 381
原创 BZOJ3224 普通平衡树
3224: Tyvj 1728 普通平衡树Time Limit: 10 Sec Memory Limit:128 MBSubmit: 9784 Solved: 4165Description您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作:1. 插入x数2. 删除x数(若有多个相同的数,因只删除一个)3. 查询x数的排名(若有多
2017-01-04 18:32:05 266
原创 splay学习总结
Splay(伸展树) 学习总结: 理解:Splay是一种平衡二叉排序树, 复杂度均摊log n。 单点操作Splay要点:1、动态内存静态化实现:(内存池回收分配):templatestruct memorypool { T buf[size], *tail, *st[size]; int top; memorypool() : top(0)
2017-01-03 17:29:54 417 6
原创 NOIP游记
NOIP游记其实很早就想写些什么的,但是因为时间原因一直拖了下来, 本次NOIP对我也算是个教训,也是一种对还不够强大的我的训练, 从赛前的听课准备,到集训中的各种努力, 再到赛场上的发挥,我一点点得学会了很多, 这次的成绩并不算太好,我甚至一度认为自己是不可能拿到奖项的, 但是可能还是老天眷顾吧,最终没有让我自己失望, 从这次我也可以看出来,自己的心态实在是不怎么
2017-01-03 16:40:39 452
原创 NOIP赛前总结
NOIP赛前总结基础算法:·(o)排序·(?)贪心(注意每一次写拍,验证思想)·(o)二分答案(注意边界,对拍验证,自己出极值)·(o)逆序对(树状数组)·(o)离散化(排序)·(?)倍增(注意使用的范围和方法)·(?)三分答案 数学问题:·(o)公约数&公倍数·(X)素数问题+莫比乌斯+欧拉函数(线筛板子)·(o)gcd& ext_gcd(
2016-11-16 15:58:15 1136
原创 20161020测试T2 解题报告(8)——rect
Rect 算法分析:方法一: 玄学做法(毫无正确性)(摘自hyj) 期望得分: 40时间复杂度:n1)读入;2)转成数字,全部相乘后,除以a,除以2,输出; Source:#include#include#include#includeusing namespace std;int main() { //、fr
2016-11-07 23:15:48 617 1
原创 20161020测试T1 解题报告(7)——Hello
Hello算法分析:方法一: 直接暴力搜索 期望得分: 30~40时间复杂度:n!(怎么都是死)1)读入字符串,分离各位置;2)从第一位开始传参搜索每一种可能; Source:#include#include#include#include#include#includeusing namespace std;long long
2016-11-07 23:06:49 302 1
原创 解题报告(6)——Word puzzles
Word Puzzle题目描述给出一个字母地图和一些字符串,请你找出每个字符串的第一个字母在地图中的位置和该字符串的方向。假设地图左上角为原点(0,0)。可能的方向有8个,从北开始顺时针方向依次编号A~H,北方编号为“A”。 (方向)输入格式第一行包含三个正整数:L(0<L≤1000),C(0<C≤1000),W(0<W≤1000
2016-11-07 22:55:35 1049 1
原创 解题报告(5)——流星雨
流星雨题目描述贝茜听说了一个骇人听闻的消息,一场流星雨即将袭击整个农场,由于流星体积过大,它们无法在撞击到地面前燃烧殆尽,届时将会对它撞到的一切东西造成毁灭性的打击。很自然地,贝茜开始担心自己的安全问题。以FJ牧场中最聪明的奶牛的名誉起誓,她一定要在被流星砸到前,到达一个安全的地方(也就是说,一块不会被任何流星砸到的土地)。如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不
2016-11-07 16:52:01 1040 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人