803. Shortest Distance from All Buildings (和573. Build Post Office II一模一样)
Code ( Language :C++) Edit class Solution { public : /** * @param grid: the 2D grid * @return: the shortest distance */ const vector < int > dx = { -1 , 1 , 0 , 0 }; const vector < int > dy = { 0 , 0 , -1 , 1 }; const int dir = 4 ; struct node { int x, y; node( int a, int b){ x = a; y = b; } }; int shortestDistance ( vector < vector < int >> &grid) { // write your code here // BFS; target入栈;target挨个入栈(对比663. Walls and Gates //一次全入);多个状态量加持; const int m = grid.size(); if (m == 0 ){ return 0 ; } const int n = grid[ 0 ].size(); int totalTarget = 0 ; // status record vector < vector < int >> dist(m, vector < int >(n, 0 )); vector < vector < int >> cnt(m, vector < int >(n, 0 )); f...