[CERC2016]Hangar Hurdles】的更多相关文章

题目链接 \(Description\) 有一个\(n\times n\)的正方形网格,上面有若干障碍点.\(q\)次询问,每次询问把一个正方形箱子从\((x1,y1)\)推到\((x2,y2)\) ,不能接触障碍点且不超出边界,箱子的边长最大能是多少. \(n\leq1000,q\leq3\times10^5\). \(Solution\) 我们可以直接将非障碍点看做顶点,向周围四个非障碍点连边.这样是要求一棵最大生成树. 从每个障碍点做八连通BFS,可以得到通过每个非障碍点位置的最大直径.…
你正在评估一些关于一个巨型飞机仓库的建设计划.飞机仓库的地面可以表示为n行n列的网格图,其中每个格子要么是空的,要么有障碍物.行从上到下依次被编号为1到n,列从左到右依次被编号为1到n.存放飞机零件的大型集装箱能在飞机仓库的地面上自由移动是很重要的.我们可以将每个集装箱看作一个以某个格子为中心的边平行于坐标轴的正方形.对于一个奇数k,一个尺寸为k的集装箱是一个包含k行k列的正方形.一个集装箱的坐标为其中心格子的坐标.集装箱可以向上下左右移动,但不能碰到障碍物,且不能移出仓库的边界.给定q对格子A…
题面 \(solution:\) 某蒟蒻的心路历程: 这一题第一眼感觉很奇怪 带障碍物的图,最大的集装箱? 首先想到的就是限制我集装箱大小条件的是什么: 如果我要在某一个点上放一个集装箱且使它最大, 那就相当于求这一个点往外扩出去的最大正方形. 然后考虑从一个点到与它相邻的点移动时最大的箱子, 这不就是这两个点的最大正方形中较小的那一个吗? 于是考虑把所有点上的最大正方形都求出来,这个n^2即可 然后我就是要求两个点之间所有路径上的最小的那个最大正方形了 仔细一想,嗯?,这不就是货车运输吗?难道…
正解: 解题报告: 传送门! 首先不难想到这题主要有两个问题需要解决,一个是预处理出各个点的箱子半径最大值,一个是求ans 然后分别港下QwQ 首先关于预处理要说下昂 预处理有三种方法,分别港下 第一种是从障碍点出发,八联通bfs 就bfs,最开始是所有障碍点加入队列中,然后八联通bfs地转移,每个点第一次被找到的时候就是它能放的最大箱子的半径 第二种是二维前缀和 这个我还马油get等看了代码再来repo趴QAQ 第三种是二分 同上QAQ 然后关于具体求解,有两个正解和一个听说是假的但是听说跑得…
题意 题目描述 你正在评估一些关于一个巨型飞机仓库的建设计划.飞机仓库的地面可以表示为n行n列的网格图,其中每个格子要么是空的,要么有障碍物.行从上到下依次被编号为1到n,列从左到右依次被编号为1到n. 存放飞机零件的大型集装箱能在飞机仓库的地面上自由移动是很重要的.我们可以将每个集装箱看作一个以某个格子为中心的边平行于坐标轴的正方形.对于一个奇数k,一个尺寸为k的集装箱是一个包含k行k列的正方形.一个集装箱的坐标为其中心格子的坐标.集装箱可以向上下左右移动,但不能碰到障碍物,且不能移出仓库的边…
给你一张地图,给你q次询问,每次问你从A点到B点,最大能移动多大的箱子. 把每个点所能容纳的最大箱子求出来(BFS,八连通,一开始将所有边界点和障碍点入队).然后从大到小排序.然后用并查集将相邻(四联通)的点依次链接起来,如果不路径压缩的话,那么两个节点的LCA的所能容纳的箱子大小就是答案.于是用并查集辅助建树,之后离线询问,然后Tarjan跑个LCA即可. O(n^2+qlog(n)),log是因为map记录答案. #include<cstdio> #include<algorithm…
题目大意:给出一个n*n的矩阵,有一些点是障碍,给出Q组询问,每组询问求两点间能通过的最大正方形宽度. 首先需要求出以每个点(i,j)为中心的最大正方形宽度mxl[i][j],可以用二维前缀和+二分或者BFS求. 然后每相邻的两个点建一条权值为min(mxl[i][j],mxl[i'][j'])的边,求出整个图的最小生成树(注意边权要从大到小排序,实际上求出的是边权的“最大生成树”)或者kruskal重构树,对于每组询问(x1,y1),(x2,y2),答案为最小生成树上两点间路径的最小边权,或者…
直接floyd.. ---------------------------------------------------------------------------- #include<cstdio> #include<cstring> #include<algorithm> #include<iostream>   #define rep( i , n ) for( int i = 0 ;  i < n ; ++i ) #define clr(…
1641: [Usaco2007 Nov]Cow Hurdles 奶牛跨栏 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 424  Solved: 272[Submit][Status] Description Farmer John 想让她的奶牛准备郡级跳跃比赛,贝茜和她的伙伴们正在练习跨栏.她们很累,所以她们想消耗最少的能量来跨栏. 显然,对于一头奶牛跳过几个矮栏是很容易的,但是高栏却很难.于是,奶牛们总是关心路径上最高的栏的高度. 奶牛的训练场…
题目描述 Farmer John wants the cows to prepare for the county jumping competition, so Bessie and the gang are practicing jumping over hurdles. They are getting tired, though, so they want to be able to use as little energy as possible to jump over the hu…