私は Mocha!!

私はこの世界を深く愛している

排序:
默认
按更新时间
按访问量

[BZOJ1233][Usaco2009Open]干草堆tower(单调队列优化)

传送门 题意搞skr人…,其实就是堆方块: 有n(n<=100000)个干草,每堆有个宽度,现在要且分成若干段,把每一段的干草按顺序堆起来形成一个多层的干草堆(所以下标越小的干草堆放在越下面)且宽度要逐层非严格递减(上面一层的宽度<=下面一层的宽度),求...

2018-10-15 09:36:22

阅读数:7

评论数:0

[HDU2196]Computer(树形dp+二次扫描换根法)

传送门 题意: 给出一棵树,求离每个节点最远的点的距离 一开始以为是树的直径。。然后看清题意之后就可以容易看出是树形dp了,对于这种无根树且需要求每一个点的情况需要运用二次扫描换根法。那么我们来设列dp方程吧,我们思考当前点x的最远点距离是怎么得到的,只有两种情况: 1、来自他的子树(图中红色)...

2018-10-09 21:29:00

阅读数:22

评论数:0

[BZOJ1237][SCOI2008]配对(贪心+dp)

传送门 题意:n 个整数A[i]和n个整数B[i]。把它们配对,要求所有配对的整数差的绝对值之和最小,不允许两个相同的数配对。(n<=100000) 首先排序两个数组。然后我们考虑一下简单的问题:如果两个相同的数允许配对的话,我们排完序之后每一位的一一对应配对就行了。但是现...

2018-10-01 17:53:57

阅读数:27

评论数:0

线性DP组题

线性dp体现为在线性空间上的递推,dp的阶段沿着各个维度线性增长,譬如说最长上升子序列,最长公共子序列就是最为简单的两个问题。 1、[POJ2279]Mr.Young’s Picture Permutations http://poj.org/problem?id=2279 由于行数k很小,所以...

2018-09-26 10:14:57

阅读数:19

评论数:0

[poj3580]SuperMemo(splay终结题)

传送门 题意: 你需要维护一组数字,包括这样的几个操作: 给出一个数字序列,有6种操作: 1、 ADD l r d:区间[l,r]的数都加上d。 2、 REVERSE l r : 将区间[l,r]中的数翻转 。 3、 REVOLVE l r t :将区间[l,r]旋转t次,如1 2 3 4 5 ...

2018-09-23 08:52:36

阅读数:42

评论数:0

[poj1151]Atlantis & [poj1177]picture(扫描线)

玩一玩扫描线,这个东西还是很强力的,而且容易yy。但是就是细节很多,所以查错特别麻烦。 推荐这篇blog: https://www.cnblogs.com/yangsongyi/p/8378629.html 【poj1151】 http://poj.org/problem?id=1151 题意:...

2018-09-21 13:12:13

阅读数:18

评论数:0

[poj2828]Buy Tickets(树状数组求第k大)

传送门 题意: i个人排队,对于第i个人,我们知道他排在第pi个人后面(可以插队)且他有一个权值val,我们需要输出排好之后每个人的权值。 首先我想的是链表来模拟,但是发现由于p[i]指的是位置而不是编号,所以链表是只能O(n^2)的。 那么怎么办呢?我们结合题目中给的样例解释来思考。 我们...

2018-09-20 11:48:48

阅读数:30

评论数:0

[poj1182]食物链 & [poj2912]Rochambeau (边带权和扩展域并查集模型)

传送门【poj1182】 传送门【poj2912】 这两题之所以可以放在一起讲,一是他们的所求内容高度相似,其次是他们都属于边带权或者拓展域的并查集的基本模型。 这两题的核心思路就是维护三个集合A,B,C,使得他们里面的元素满足A吃B,B吃C,C吃A。 那么这样的具有传递性的关系以及维护...

2018-09-19 20:31:36

阅读数:28

评论数:0

并查集的路径压缩和按秩合并

记录一下并查集的两种优化: 路径压缩 路径压缩是并查集最常用的一个优化之一,他可以优化查询的速度。我们发现,在普通的并查集中,如果我们要询问一个元素所属哪个集合,我们只关心集合的代表是谁(也就是并查集树形结构中的树根是谁),而并不关心树的形态。那么我们可以在每次执行往上找根节点的时候,把路...

2018-09-08 16:49:46

阅读数:50

评论数:3

数论知识点

稍微整理一下蓝书上数论章节的知识点 1、一个数的约数和=(1+p1+p12+...+p1c1)∗(1+p2+p22+...+p2c2)∗...∗(1+pk+pk2+...+pkck)(1+p1+p12+...+p1c1)∗(1+p2+p22+...+p2c2)∗...∗(1+pk+pk2+......

2018-09-07 17:27:25

阅读数:30

评论数:0

[洛谷P4372][USACO18OPEN]Out of Sorts P(乱搞)

https://www.luogu.org/problemnew/show/P4372   模拟赛的题,考场上看着是最可做的。洛谷评分是NOI+/CTSC是smg…   依旧是放我们模拟赛的题意:   世界上OI水平最高的奶牛bessie正在学习排序算法。她先后学习了冒泡排序和快速排序。...

2018-08-21 21:21:31

阅读数:85

评论数:0

[Codeforces741C]Arpa’s overnight party and Mehrdad’s silent entering(二分图染色)

http://codeforces.com/contest/741/problem/C 题目描述   要不我就用这次模拟考的题面吧哈哈哈写的好有趣:   七夕节,有 对情侣围做在一个圆桌上吃饭。座位的编号为 1~2n(1<=n<=10^5) 。...

2018-08-21 20:02:21

阅读数:32

评论数:0

质数和约数

质数 【例题】Prime Distance(poj2689)   这题L,R范围很大,但是L,R差值在可以接受的范围内。因为一个数n的质因子不会超过n−−√n\sqrt{n},所以我们考虑线筛预处理R−−√R\sqrt{R}范围内所有的质数,在线筛的的同时标记L到R范围的合数。   如何标记...

2018-08-17 16:39:26

阅读数:30

评论数:0

搜索练习

1、靶形数独(传送门) 就是poj3074的数独加上一个判断就好了,注意位运算的细节。 #include<cstdio> #include&amp...

2018-08-09 16:44:38

阅读数:34

评论数:0

A*与IDA*算法

A*   A*算法是基础的启发式算法,常使用“估价函数”减少选择来用于优化搜索的速度。对于当前的状态,我们知道当前已经用了的代价,那么我们可以设计一个估价函数fff来估计未来的状态,当前代价+未来代价作为这个状态的预估总代价。   那么这个估价函数值fff需要满足f(now)≤g(now)f(...

2018-08-08 20:39:05

阅读数:62

评论数:0

广搜与广搜变形

广搜 【例题】Bloxorz(poj3322) 用一个三元组(x,y,lie)记录状态(x,y)为方块躺着的时候左或上的坐标以及立着的底坐标,躺着立着分情况处理滚动方向,注意判断边界即可。 #include<cstdio&...

2018-08-06 20:50:03

阅读数:23

评论数:0

迭代加深和双向搜索

迭代加深   当答案的层数较低,并且搜索的分支较多时,如果直接搜索会消耗很多时间。这时候可以进行多次搜索,每次搜索可以限制一个深度,如果我们在当前深度下搜索不到答案,就增加深度限制,重新搜索一边答案,这样“迭代”且“加深”的过程称为迭代加深。但他的缺点也很明显,每次需要重新搜索一遍,所以在答案的...

2018-07-17 15:47:17

阅读数:143

评论数:0

剪枝

【例题】Sudoku1(poj2676)   题意就是一个数独游戏。   爆搜,无剪枝可过。 #include<cstdio> #include<iostream> #...

2018-07-14 11:38:30

阅读数:64

评论数:0

搜索基础

为了方便复习整理(凑博客数),决定把之前那篇《算法竞赛进阶指南0x20搜索》分开小节记录博客。这一节记录一些搜索的入门基础题目。 0x21 树和图的遍历: 先放一点基本的代码 void ins(int x,int y) { len++; a[len].x=x;a[len].y=y...

2018-07-14 11:37:23

阅读数:83

评论数:0

[POJ1190][NOI1999]生日蛋糕(搜索+剪枝)

传送门 首先读题:   本题忽略ππ\pi只将它后面的有理数进行计算,其次对于表面积,整个蛋糕的上表面面积之和等于最大圆的底面积。所以我们只需要计算侧面积,最底那层计算底面积即可。   仍然是一道经典的搜索剪枝题目。我首先把题目所描述的(1~M从底向上)倒过来(1~M从上到底)方便处理,...

2018-07-14 11:20:08

阅读数:69

评论数:0

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