BZOJ 2007: [Noi2010]海拔】的更多相关文章

2007: [Noi2010]海拔 Time Limit: 20 Sec  Memory Limit: 552 MBSubmit: 2410  Solved: 1142[Submit][Status][Discuss] Description YT市是一个规划良好的城市,城市被东西向和南北向的主干道划分为n×n个区域.简单起见,可以将YT市看作一个 正方形,每一个区域也可看作一个正方形.从而,YT城市中包括(n+1)×(n+1)个交叉路口和2n×(n+1)条双向道路 (简称道路),每条双向道路连…
题目链接:BZOJ - 2007 题目分析 首先,左上角的高度是 0 ,右下角的高度是 1.那么所有点的高度一定要在 0 与 1 之间.然而选取 [0, 1] 的任何一个实数,都可以用整数 0 或 1 来替换,获得同样的效果. 虽然输出的答案要求是四舍五入到整数,但其实答案就是一个整数! 那么高度就一定是 0 或 1 了,并且还有一点,所有选 0 的点都连通,所有选 1 的点都联通.因为如果一个选 0 的点被选 1 的点包围,那么它选 1 更优. 于是整个图中所有的点分成了与左上角相连的集合 A…
题目链接 想一下能猜出,最优解中海拔只有0和1,且海拔相同的点都在且只在1个连通块中. 这就是个平面图最小割.也可以转必须转对偶图最短路,不然只能T到90分了..边的方向看着定就行. 不能忽略回去的边,因为最小割的形状可能很奇怪. //16232kb 456ms //平面图点数就是(n-1)^2了.但是边数不是4(n-1)^2,是4n(n-1)!.. #include <queue> #include <cstdio> #include <cctype> #includ…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2007 一个点的高度一定不是0就是1.答案一定形如一个左上角的连通块全是0的点.一个右下角的连通块全是1的点. 注意从东到西还有从南到北的边也有用!因为不一定是一个阶梯形的,还可以拐来拐去,只是一定是两个连通块罢了. 所以最小割一下那个分界线就行了.但会TLE. #include<cstdio> #include<cstring> #include<algorithm&g…
上来就跑3e5的最大流--脑子抽了 很容易看出,每个地方的海拔都是0或1因为再高了没有意义,又,上去下来再上去没有意义,所以最后一定是从s连着一片0,剩下连着t一片1,然后有贡献的就是01交接的那些边 跑个最小割就好了 然而跑不过,考虑建对偶图,也就是网格的空当成一个点,然后这些点之间互相连边的权值为原图穿过他们的边的权值,建立一对原点汇点,分别连左下边界的新点和右上边界的新点,这样跑最短路就是最小割 方便的建图是把所有边转90度就是新边 #include<iostream> #include…
2007: [Noi2010]海拔 Time Limit: 20 Sec  Memory Limit: 552 MBSubmit: 2504  Solved: 1195 Description YT市是一个规划良好的城市,城市被东西向和南北向的主干道划分为n×n个区域.简单起见,可以将YT市看作一个 正方形,每一个区域也可看作一个正方形.从而,YT城市中包括(n+1)×(n+1)个交叉路口和2n×(n+1)条双向道路 (简称道路),每条双向道路连接主干道上两个相邻的交叉路口.下图为一张YT市的地…
2007: [Noi2010]海拔 https://www.lydsy.com/JudgeOnline/problem.php?id=2007 分析: 平面图最小割. S在左下,T在右上,从S到T的一个路径使得路径右下方全是1,左上方全是0. 一个问题:每个点的高度只能是0/1,所以有些边是一定不能选的,就让它连向S,不影响. 代码: /* 平面图最小割 */ #include<cstdio> #include<algorithm> #include<cstring>…
Description YT市是一个规划良好的城市,城市被东西向和南北向的主干道划分为n×n个区域.简单起见,可以将YT市看作一个正方形,每一个区域也可看作一个正方形.从而,YT城市中包括(n+1)×(n+1)个交叉路口和2n×(n+1)条双向道路(简称道路),每条双向道路连接主干道上两个相邻的交叉路口.下图为一张YT市的地图(n = 2),城市被划分为2×2个区域,包括3×3个交叉路口和12条双向道路. 小Z作为该市的市长,他根据统计信息得到了每天上班高峰期间YT市每条道路两个方向的人流量,即…
题目 传送门:QWQ 分析 左上角是0,右下角是1.那么大概整张图是由0 1构成的. 那么我们要找到0和1的分界线,值就是最小割. 然后变成求原图最小割. 考虑到此题是平面图,那么就转成对偶图跑最短路. 完了. 总结:以后看到数据在$ nlog(n) $范围内的题,给的图是方格图,给的边还方方正正,那么多半是平面图转对偶图. 代码 #include <bits/stdc++.h> using namespace std; *; vector<int> G[maxn]; struct…
标题效果:YT城市是一个精心规划的城市.这个城市是东西向和南北向干道成n×n地区性.简单.可以YT作为一个城市广场,每个区域也可被视为一个正方形.因此,.YT市中含有(n+1)×(n+1)交叉口和2n×(n+1)双向通道(缩写路),主干道上两个相邻的交叉路口. 下图为一张YT市的地图(n = 2),城市被划分为2×2个区域.包含3×3个交叉路口和12条双向道路. 小Z作为该市的市长,他依据统计信息得到了每天上班高峰期间YT市每条道路两个方向的人流量,即在高峰期间沿着该方向通过这条道路的人数.每个…