先考虑单纯的最短路,然后考虑限制一个方向且最多可到达一个障碍,求最小值。 #include <bits/stdc++.h> int main(void) { int n, m; std::cin >> n >> m; bool grid[n][m]; memset(grid, 0, sizeof(grid)); for (int i = 0; i < n; ++i) { for (int j = 0; j < m; ++j) { char ch; ...