题解 CF1391B 【Fix You】

smallfang

2020-08-10 13:09:16

Solution

这道题、我们发现、所有传送带只能向下传送或者向右传送,所以不会出现环。因为环需要上下同时出现或者左右同时出现。这证明、所有点都会走到最后一行或者最后一列。那么最后一列需要让所有步骤变为**下**才能到达重点、最后一行需要所有步骤变为**右**,才能到达终点。那就统计最后一列右的个数、最后一行下的个数即可。 Code ```cpp #include <iostream> using namespace std; const int MAXN = 1e5; const int INF = 1e9; int n, m; int main() { int t; scanf("%d", &t); while (t -- ) { scanf("%d%d", &n, &m); char x; int c = 0; for (int i = 1; i <= n; i ++ ) { for (int j = 1; j <= m; j ++ ) { cin >> x; if (i == n && j == m) { continue; } if (i == n) { c += (x != 'R'); } if (j == m) { c += (x != 'D'); } } } printf("%d\n", c); } return 0; } ```