思路 设为坐标(i,j)点不动,白点从(i,j)四个方向上的某个方向x转移到y的最小代价。 *1* 2+3 *4* 就是坐标点,1~4就是四个可能的位置。然后愉快的跑spfa就可以了,具体的增光看代码就很清晰了。 代码 #include <bits/stdc++.h> using namespace std; const int inf=0x3f3f3f3f; int f[4][2]={{0,1},{0,-1},{1,0},{-1,0}}; int n,m,Q,a[31][31]; int dp[31][31][4][4]; int q[4010],l,r,vis[31][31];...