魍魉的小窝


  • 首页

  • 标签

  • 分类

  • 归档

  • 关于

  • 搜索

[USACO5.1]圈奶牛

发表于 2018-08-12 | 分类于 OI
字数统计: 372 | 阅读时长 ≈ 2

先上图
Graham
传统的Graham 扫描法
先排序,从左到右,从下到上
做两边,分别做上半部分和下半部分
用栈维护点,发现是凹的就退栈,但起点不能弹掉(WA了好久)
三点方向可用叉积判断
每一遍做完后栈中剩下的元素就是凸包的顶点

阅读全文 »

[NOIP2017]逛公园

发表于 2018-08-12 | 分类于 OI
字数统计: 716 | 阅读时长 ≈ 4

当年天真的我以为最短路图是有环的,然后翻了车

首先跑一遍的最短路,记为
用记录点,距离的方案数
转移方程如下

这里的是反图上的边
答案就是,初始化所有为1

对于0 环,比较好的一种处理方式是记忆优化搜索
当处理时,再次搜到,则说明图中存在0 环

阅读全文 »

洛谷P2662 牛场围栏

发表于 2018-08-12 | 分类于 OI
字数统计: 372 | 阅读时长 ≈ 2

首先随便找一种长度的围栏,比如
设,且为最小的不能修建的长度
根据定义,均能修建,均不能修建

求的过程就是求最短路
首先,其次可用更新
显然越小,复杂度越低

阅读全文 »

割点

发表于 2018-08-12 | 分类于 OI
字数统计: 327 | 阅读时长 ≈ 2

当且仅当点,存在一个子节点,点是割点
特别地,若为搜索树的根,只要它有两个或以上子节点,它就是割点
因为是小于等于,所以在求割点时,不必考虑父节点和重边问题

阅读全文 »

割边

发表于 2018-08-12 | 分类于 OI
字数统计: 357 | 阅读时长 ≈ 2

当且仅当,存在,它为桥
需要注意的是,当存在重边时,可以用来更新

阅读全文 »

[NOI2002]银河英雄传说

发表于 2018-08-11 | 分类于 OI
字数统计: 272 | 阅读时长 ≈ 2

在记录的同时记录与的距离
初始化为0

阅读全文 »

[NOI2001]炮兵阵地

发表于 2018-08-11 | 分类于 OI
字数统计: 388 | 阅读时长 ≈ 2

先预处理出一行内所有可行方案,记为,可以发现可行解并不多
再预处理出所有可行方案的炮兵数目,记为
用记录前行,且上一行状态为,上两行状态为的最大炮兵数目

转移时需要判断状态之间是否合法,炮兵是否均在平原

阅读全文 »

[SDOI2013]直径

发表于 2018-08-11 | 分类于 OI
字数统计: 513 | 阅读时长 ≈ 3

首先求一遍直径,记起点为,终点为
所有可行边均在直径上(废话)
考虑直径上某个点,求出它不经过直径的能访问的最远距离,记为
复杂度显然是的

从到,依次遍历直径上所有点

  • 若,则到之间所有的边均不是必须经过的
  • 若,则到之间所有的边均不是必须经过的

需要注意的是,有些算法在遇到第二种情况时需要及时退出

阅读全文 »

扩展中国剩余定理

发表于 2018-08-11 | 分类于 OI
字数统计: 266 | 阅读时长 ≈ 2

不保证两两互质

设已求出前个方程的解,记为
记
则为前个方程的通解

考虑第个方程

用解出
若无解则方程组无解
若有解则

阅读全文 »

K短路

发表于 2018-08-11 | 分类于 OI
字数统计: 575 | 阅读时长 ≈ 3

其实短路是有有理有据的做法的,但我不会啊

建立一个以为关键字的优先队列
放入,然后进行扩展
易证,当被第次取出时,为到的短路

考虑用启发式优化来提高效率
到的估计距离可以为到的最短路
对于点,
优先队列以为关键字

还可以继续优化

  • 当取出其中某个点次后,不需要将其再放入优先队列中
  • 对于有距离要求的短路,当取出元素的大于给定值可直接退出
阅读全文 »
1234…12
CWHer

CWHer

OIer/ACGN

120 日志
1 分类
58 标签
RSS
GitHub ZhiHu
Links
  • 洛谷
© 2018 | CWHer
本站访客数:
|
博客全站共54.4k字