0分的代码有救吗(玄关)
查看原帖
0分的代码有救吗(玄关)
1199534
ycy1124楼主2024/3/19 20:25
#include<bits/stdc++.h>
using namespace std;
int js=0;
struct fj{
	int x[10],y[10],cnt=1;
	bool bj,pd;
}a[105][105];
void work(int x1,int y1)
{
	a[x1][y1].bj=1;
	int i=1;
	while(a[x1][y1].x[i]>0&&a[x1][x1].y[i]>0&&i<=a[x1][y1].cnt)
	{
		if(!a[a[x1][y1].x[i]][a[x1][y1].y[i]].pd)
		{
			js++;
			if(a[a[x1][y1].x[i]+1][a[x1][y1].y[i]].bj||a[a[x1][y1].x[i]-1][a[x1][y1].y[i]].bj||a[a[x1][y1].x[i]][a[x1][y1].y[i]+1].bj||a[a[x1][y1].x[i]][a[x1][y1].y[i]-1].bj)
				work(a[x1][y1].x[i],a[x1][y1].y[i]);
		}
		a[a[x1][y1].x[i]][a[x1][y1].y[i]].pd=1;
		i++;
	}
}
int main()
{
	int n,m,x1,y1,a1,b1;
	cin>>n>>m;
	a[1][1].pd=1;
	for(int i=1;i<=m;i++)
	{
		cin>>x1>>y1>>a1>>b1;
		a[x1][y1].x[a[x1][y1].cnt]=a1;
		a[x1][y1].y[a[x1][y1].cnt]=b1;
		a[x1][y1].cnt++;
	}
	work(1,1);
	cout<<js;
	return 0;
}
2024/3/19 20:25
加载中...