AcWing 173. 矩阵距离(搜索)

题目链接

题目描述

  • 请见原题目!
  • 该题目为 求某个点到离它最近的起点的距离

题目代码

/*
  求某个点到离它最近的起点的距离

  tt = -1 :
  其他初始为 0是因为 main里面传了一个值作为队尾
  也就是传入的 q[0]是队尾,而这没有传值
  如果 tt还是从 0开始, ++ tt就会导致 q[0] 这个位置为空,
  所以下标从 -1开始
*/
#include
#include
#include
#define x first
#define y second
using namespace std;
typedef pair PII;
const int N = 1010, M = N * N;
int n, m;
char g[N][N];
PII q[M];
int dist[N][N];
void bfs()
{
    int dx[4] = {-1, 0, 1, 0}, dy[4] = {0, 1, 0, -1};
    memset(dist, -1, sizeof dist);
    int hh = 0, tt = -1;
    for (int i = 1; i  n || b < 1 || b > m) continue;
            if (dist[a][b] != -1) continue;
            dist[a][b] = dist[t.x][t.y] + 1;
            q[ ++ tt] = {a, b};
        }
    }
}
int main()
{
    scanf("%d%d", &n, &m);
    for (int i = 1; i

Original: https://www.cnblogs.com/esico/p/16470702.html
Author: esico
Title: AcWing 173. 矩阵距离(搜索)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/619897/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球