社区讨论

RE20分求助

P11228[CSP-J 2024] 地图探险参与者 4已保存回复 9

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
8 条
当前快照
1 份
快照标识符
@m2rmgqjy
此快照首次捕获于
2024/10/27 21:24
去年
此快照最后确认于
2025/11/04 15:50
4 个月前
查看原帖
CPP
#include <iostream>
using namespace std;
int main()
{
	int i,t;
	cin>>t;
	for(i=0;i<t;i++)
	{
		int n,m,k,x,y,d,x1,y1,sum=1;
		cin>>n>>m>>k;
		cin>>x>>y>>d;
		char a[n][m];
		for(int j=1;j<=n;j++)
			for(int q=1;q<=m;q++)
				cin>>a[j][q];
		for(int j=0;j<k;j++)
		{
			if(d==0)
			{
				x1=x;
				y1=y+1;
			}
			else if(d==1)
			{
				x1=x+1;
				y1=y;
			}
			else if(d==2)
			{
				x1=x;
				y1=y-1;
			}
			else if(d==3)
			{
				x1=x-1;
				y1=y;
			}
			if(x1<1||x1>n||y1<1||y1>m||a[x1][y1]=='x') 
			{
				d=d+1;
				d=d%4;
			}
			else if(x1>=1&&x1<=n&&y1>=1&&y1<=m&&a[x1][y1]!='x')
			{
				x=x1;
				y=y1;
				if(a[x1][y1]=='.')
					sum++;
				a[x1][y1]=',';
			}
		}
		cout<<sum<<endl;
	}
	return 0;
}

回复

9 条回复,欢迎继续交流。

正在加载回复...