前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >洛谷1002深搜dfs

洛谷1002深搜dfs

作者头像
Yuyy
发布2022-06-28 18:36:32
1570
发布2022-06-28 18:36:32
举报
文章被收录于专栏:yuyy.info技术专栏

本文最后更新于 1170 天前,其中的信息可能已经有所发展或是发生改变。

代码语言:javascript
复制
// 洛谷1002深搜dfs.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include<iostream>
using namespace std;
#define N 25
int s[N][N];
int x1, x2, h1, h2;
long sum = 0;
void creat(int h1,int h2)
{
	for (int i = 0; i < N; i++)
	{
		for (int j = 0; j < N; j++)
		{
			if ((i == (h1 - 2) && j == (h2 - 1))
				|| (i == (h1 - 2) && j == (h2 + 1))
				|| (i == (h1 - 1) && j == (h2 - 2))
				|| (i == (h1 - 1) && j == (h2 + 2))
				|| (i == (h1 + 1) && j == (h2 - 2))
				|| (i == (h1 + 1) && j == (h2 + 2))
				|| (i == (h1 + 2) && j == (h2 - 1))
				|| (i == (h1 + 2) && j == (h2 + 1))
				|| (i == h1 && j == h2 )
				)
				s[i][j] = 1;
			else
				s[i][j] = 0;
		}
	}
	
}

void dsf(int i, int j)
{
	if (i == x1&&j == x2)
	{
		sum++;
		cout << sum << endl;
		return;
	}
		
	if (i >= 0&&i<=x1&&j>=0&&j<=x2&&s[i][j]==0)
	{
		dsf(i + 1,j);
		dsf(i, j + 1);
	}

	else
		return;
}
int main()
{	
	cin >> x1 >> x2 >> h1 >> h2;
	creat(h1, h2);
	
	dsf(0, 0);
	cout << sum;
	return 0;
}

Post Views: 169

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-4-15 1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档