CodeForces 616C The Labyrinth】的更多相关文章

先预处理出所有连通块,对于每一个*,看他四周的连通块即可 #include<cstdio> #include<cstring> #include<queue> #include<algorithm> using namespace std; +; char s[maxn][maxn]; int Map[maxn][maxn]; int n,m; ][]; int Belong[maxn*maxn];//每个点属于哪个联通快 int tot[maxn*maxn…
传送门: http://codeforces.com/problemset/problem/616/C C. The Labyrinth time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output You are given a rectangular field of n × m cells. Each cell is either em…
题目链接:1063B - Labyrinth/1064D - Labyrinth 题目大意:给定一个\(n\times m\)的图,有若干个点不能走,上下走无限制,向左和向右走的次数分别被限制为\(x\)和\(y\),给出起点并询问有多少个点能够到达. 题解:此题坑多...本弱写裸BFS,WA了一百次_(:з」∠)_ 考虑从点\(A\)到点\(B\)需要向左或者向右走的次数,可以发现若设向左走的次数为\(l\),向右走的次数为\(r\),则\(r-l\)是个定值,因此转换成最短路问题用最短路跑一…
D - Labyrinth 对于位置(i,j), j - c = R - L = const(常数), 其中R表示往右走了几步,L表示往左走了几步 所以R越大, L就越大, R越小, L就越小, 所以只需要最小化L和R中的其中一个就可以了 由于每次变化为0或1,所以用双端队列写bfs, 保证最前面的值最小, 简化版的dijkstra 不过看到好多没写双端队列的也过了...... 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma…
原题链接/原题链接(代理站) 题目翻译 给你一个\(n*m\)的迷宫和起始点,有障碍的地方不能走,同时最多向左走\(x\)次,向右走\(y\)次,向上向下没有限制,问你有多少个格子是可以到达的. 输入样例 4 5 3 2 1 2 ..... .***. ...** *.... 输出样例 10 数据范围 \(n,m\leqslant 2000\) 考虑最裸的\(bfs\),开一个队列,从起点开始,每搜到一个格子就打上标记.但是这样显然是错的,考虑下面这组数据: ..... .***. ...*.…
\(\\\) \(Description\) 给出一个四联通的\(N\times M\) 网格图和起点.图中有一些位置是障碍物. 现在上下移动步数不限,向左至多走 \(a\) 步,向右至多走 \(b\) 步,求从起点出发能到达多少个空地. \(N,M\le 2000\) \(\\\) \(Solution\) 爷们太神了...... 开始的想法是直接跑最短路, \(dist\) 为横向移动总步数. 后来发现矛盾在于,如果到一个格子向左走的步数较少,向右走的步数较多,和这种情况反过来,无法确定那种…
[链接] 我是链接,点我呀:) [题意] 你可以往左最多x次,往右最多y次 问你从x,y出发最多能到达多少个格子 只能往上下左右四个方向走到没有障碍的格子 [题解] 假设我们从(r,c)出发想要到固定某个点(i,j)的最短距离 我们设x0为向左走动的次数,y0为向右走动的次数 显然(j-c)=y0-x0 即y0 = (j-c) + x0 这里j-c是一个常数 也就是说当我们让x0最小的时候到达每一个点的对应的y0也一定是最优的,因为和x0成正相关 因此我们只要求出来(r,c)到所有点所用的x0的…
616A - Comparing Two Long Integers    20171121 直接暴力莽就好了...没什么好说的 #include<stdlib.h> #include<stdio.h> #include<math.h> #include<cstring> #include<iostream> #include<algorithm> using namespace std; string a,b;int sa,sb;…
可以吃饭啦!!! A:连通块 ZOJ 1709 Oil Deposits(dfs,连通块个数) B:素数变换 打表+bfs POJ 3216 Prime Path(打表+bfs) C:水bfs HDU 2717 Catch That Cow(常规bfs) D:bfs+状态压缩 HDU 1429 胜利大逃亡(续)(bfs+状态压缩,很经典) E:bfs+优先队列 CSU 1726: 你经历过绝望吗?两次!(bfs+优先队列) F:bfs+优先队列(还有点问题) G:很有意思的bfs CodeFor…
C. The Labyrinth 题目连接: http://www.codeforces.com/contest/616/problem/C Description You are given a rectangular field of n × m cells. Each cell is either empty or impassable (contains an obstacle). Empty cells are marked with '.', impassable cells are…