社区讨论
0分求助!
P11228[CSP-J 2024] 地图探险参与者 2已保存回复 6
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 6 条
- 当前快照
- 1 份
- 快照标识符
- @m698robs
- 此快照首次捕获于
- 2025/01/23 19:20 去年
- 此快照最后确认于
- 2025/11/04 10:48 4 个月前
样例1过了,却全WA,估计我赛时就是这样爆0的……
CPP#include <iostream>
using namespace std;
char s[1001][1001];
bool flag[1001][1001], flag2[1001][1001];
int xx[4] = {0, 1, 0, -1}, yy[4] = {1, 0, -1, 0};
int main()
{
int t;
cin >> t;
while (t--)
{
int n, m, k;
cin >> n >> m >> k;
int x, y, d;
cin >> x >> y >> d;
x -= 1;
y -= 1;
flag2[x][y] = true;
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < m; ++j)
{
cin >> s[i][j];
if (s[i][j] == '.')
{
flag[i][j] = true;
}
}
}
for (int i = 0; i < k; ++i)
{
int x2 = x + xx[d], y2 = y + yy[d];
if (x2 >= 0 && x2 < n && y2 >= 0 && y2 < m && flag[x2][y2] == true)
{
x = x2;
y = y2;
flag2[x][y] = true;
}
else
{
d += 1;
d %= 4;
}
}
int cnt = 0;
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < m; ++j)
{
if (flag2[i][j] == true)
{
cnt += 1;
}
}
}
cout << cnt << endl;
}
return 0;
}
回复
共 6 条回复,欢迎继续交流。
正在加载回复...