90分求助,#6WA
  • 板块P1605 迷宫
  • 楼主zhibuba
  • 当前回复3
  • 已保存回复3
  • 发布时间2020/5/28 21:06
  • 上次更新2023/11/7 01:33:21
查看原帖
90分求助,#6WA
319478
zhibuba楼主2020/5/28 21:06
#include <stdio.h>
#include <stdbool.h>

bool Map[7][7];
int L[6][6];
int N, M, T, SX, SY, FX, FY;
int ans;

void visit(int i, int j)
{
	if (i == FX && j == FY)
	{
		ans++;
		return ;
	}
	if (!Map[i][j])
	{
		Map[i][j] = true;
		visit(i - 1, j);
		visit(i, j - 1);
		visit(i + 1, j);
		visit(i, j + 1);
		Map[i][j] = false; 
	}
	return ;
}

int main(void)
{
	scanf("%d%d%d %d%d%d%d", &N, &M, &T, &SX, &SY, &FX, &FY);
	while (T--)
	{
		int i, j;
		scanf("%d%d", &i, &j);
		Map[i][j] = true;
	}
	for (int i = 0; i <= N + 1; i++)
		Map[i][0] = Map[i][M + 1] = true;
	for (int j = 0; j <= M + 1; j++)
		Map[0][j] = Map[N + 1][j] = true;
	visit(SX, SY);
	printf("%d", ans);
	return 0;
}
2020/5/28 21:06
加载中...