`
Jianquan
  • 浏览: 19827 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

UVa 784 Maze Exploration

    博客分类:
  • UVa
阅读更多

题目:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=725

这道题也是一道非常裸的dfs

#include<iostream>
#include<cstdio>
#include<string>
using namespace std;

char map[40][90];
int line,len[40];//迷宫的行数、每一行的字符数

void dfs(int i,int j)
{
	map[i][j]='#';
	int dir[4][2]={-1,0,0,-1,0,1,1,0};
	for(int k=0;k<4;k++)
	{
		int nexti=i+dir[k][0],nextj=j+dir[k][1];
		if(map[nexti][nextj]==' ')
			dfs(nexti,nextj);
	}
}
void print()
{
	for(int i=0;i<line;i++)
	{
		for(int j=0;j<len[i];j++)
			cout<<map[i][j];
		cout<<'\n';
	}
}		
int main()
{
	//freopen("in.txt","r",stdin);
	int i,j,n,starti,startj;
	string str;
	cin>>n;
	getchar();
	while(n--)
	{		
		i=0;
		while(getline(cin,str)&&str[0]!='_')
		{
			len[i]=str.length();
			for(j=0;j<len[i];j++)
			{
				if(str[j]=='*')
				{
					starti=i;
					startj=j;
				}
				map[i][j]=str[j];
			}
			i++;
		}
		line=i;
		dfs(starti,startj);
		print();
		cout<<str<<endl;//打印最后一行的下划线
	}
	return 0;
}

 

分享到:
评论

相关推荐

    uva705-Slash-Maze-.rar_Slash_uva705

    【标题】"uva705-Slash-Maze-.rar_Slash_uva705" 指向的是一个在UVa Online Judge (UVa OJ) 上提交并通过的编程问题,具体为问题编号705,名为"Slash Maze"。这个压缩包很可能包含了该问题的解决方案源代码。 ...

    maze的源代码

    【maze的源代码】是一个关于迷宫生成与解决算法的编程项目,可能包含了多种实现方式,如深度优先搜索(DFS)、广度优先搜索(BFS)或者A*搜索算法等。这些算法通常用于游戏开发、路径规划等领域,具有很高的实用价值...

    MAZE是一种网络协议,其核心就是通过网络从别人的电脑里下载文件。本代码实现了Maze这一功能。

    ** Maze 网络协议详解 ** Maze网络协议是一种创新的数据传输协议,设计初衷是为了高效地在网络上实现文件的共享与下载。这个协议的核心理念是利用互联网的力量,允许用户从其他计算机上直接获取所需的文件,这类似...

    天网Maze简体中文绿色版

    《天网Maze简体中文绿色版》是一款集学习、娱乐、资讯和沟通功能于一体的综合性软件,特别适合校园网络环境使用。它旨在为学生和教师提供一个便捷、全面的网络平台,促进教育信息化的发展,同时也为校园文化建设注入...

    maze

    在IT行业中,"maze"可能指的是迷宫算法或者与之相关的编程挑战。迷宫问题是一个经典的数据结构和算法问题,通常涉及到路径寻找、图遍历等概念。在本场景下,由于标签为“字体”,我们可以推测这可能是一个关于字体...

    天网Maze2007

    Maze2007 Maze2007 Maze

    基于java的maze game

    基于java写的小maze程序

    布线算法有图示讲解Maze Router

    ### 布线算法之Maze Router详解 #### 一、引言 在电子设计自动化(EDA)领域,布线算法对于实现电路板或集成电路的高效连接至关重要。其中,Maze Router是一种广泛应用的布线算法,它能够有效地解决两点间的路径...

    MAZE GAME(C++)

    一個MAZE的C++ GAME #include 果到入唔同map去TEST佢

    maze_env.py

    maze_env.py

    matlab开发-Maze

    标题“matlab开发-Maze”表明我们正在探讨如何使用MATLAB来构建一个迷宫游戏。在这个项目中,目标是设计一个迷宫,玩家(可能由用户或者预定义的算法控制)需要找到出口,并记录完成的时间。 MATLAB是一种强大的...

    maze系统源代码

    【maze系统】是一种基于C++编程语言开发的软件系统,主要功能是实现迷宫路径的自动搜索以及自动化攻击等操作。在计算机科学中,解决迷宫问题通常涉及到图论、算法设计与分析等多个领域的知识。这里我们将深入探讨该...

    天网maze ,Maze2008_Setup.exe

    天网妹子,享受娱乐快感,看电影,听音乐,有片哦

    maze path for Java

    int[i*n+j]表示m行n列的迷宫内可以通过的格(cell),用方法int maze(int[] arr, int m, int n)算出走出该迷宫的路径。 假设入口在左上角而且出口在右下角,通过Stack实现。

    日语手写输入法mazec3 v1.9.9

    日语手写输入法 mazec3 v1.9.9 当前版本:1.9.9 软件语言:多语言 软件类别:输入法 软件大小:25.79 MB 适用固件:2.2及更高固件 内置广告:没有广告 适用平台:Android *这是日本的手写识别应用程序。 *手写识别...

    random-maze.zip_FPGA 迷宫_PS2 VGA INTERFACE _fpga游戏_maze_random

    在这个项目中,“random-maze.zip”是一个包含FPGA迷宫游戏的压缩包,其重点是利用FPGA技术、PS2键盘接口以及VGA显示接口来创建一个互动游戏。 首先,我们要理解FPGA迷宫游戏的基本概念。FPGA迷宫游戏是通过编程在...

    matlab开发-Maze3D

    《MATLAB开发——3D迷宫(Maze3D)详解》 在计算机科学领域,迷宫生成和导航是一项趣味盎然且富有挑战性的任务。MATLAB作为一种强大的编程环境,尤其在数学计算、图像处理和计算机视觉方面表现出色,自然成为了实现3D...

    MazeⅡ(迷宫小游戏)C语言实现

    《C语言实现的MazeⅡ迷宫游戏详解》 迷宫游戏,作为一种经典的游戏类型,深受编程爱好者和游戏开发者的喜爱。在这个项目中,我们使用C语言来实现了一个名为"MazeⅡ"的迷宫小游戏。虽然它没有华丽的图形用户界面,...

    J2ME code for game Maze 3D

    今天,我们来深入探讨一个特定的项目——“Maze 3D”,这是一款基于J2ME的游戏源代码,它为我们提供了宝贵的3D迷宫游戏开发经验。 J2ME是Java平台的一个子集,设计用于资源有限的设备,如早期的智能手机和平板电脑...

    maze迷宫cpp报告.rar

    【标题】:“maze迷宫cpp报告”涉及到的是一个基于C++编程语言的迷宫问题解决算法。在这个项目中,我们关注的重点是如何在一个由0(通路)和1(障碍物)组成的m*n矩阵中,寻找从起点到终点的有效路径。 【描述】中...

Global site tag (gtag.js) - Google Analytics