2 qq 33816944 qq_33816944 于 2016.05.04 18:57 提问

蓝桥杯 搜索算法

10.移动字母
2x3=6个方格中放入ABCDE五个字母,右下角的那个格空着.如图1所示.
和空格子相邻的格子中的字母可以移动到空格中,比如,图中的C和E就可以移动,移动后的局面分别是:
A B
D E C
A B C
D E
为了表示方便,我们把6个格子中字母配置用一个串表示出来,比如上边的两种局面分别表示为:
AB*DEC
ABCD*E
题目的要求是:请编写程序,由用户输入若干表示局面的串,程序通过计算,输出是否能通过对初始状态经过若干次移动到达该状态.可以实现输出1,否则输出0.初始状态为:ABCDE*
用户输入的格式是:先是一个整数n,表示接下来有n行状态.程序输出也应该是n行1或0
例如,用户输入:
3
ABCDE*
AB*DEC
CAED*B
则程序应该输出:
1
1
0

2个回答

caozhy
caozhy   Ds   Rxr 2016.05.04 23:51
CSDNXIAOD
CSDNXIAOD   2016.05.05 08:11

A*搜索算法
一、A*搜索算法
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
蓝桥杯及其搜索算法总结
蓝桥杯,考暴力和搜索,这是众所周知的事情,近几年的题目非常非常的多。         搜索的基本理论:                    1、回溯法:当把问题分成若干个步骤并递归求解时,如果当前步骤没有合法选择,则函数将返回上一级递归调用,这种现象就称回溯。                    2、路径寻找问题:路径寻找问题可以归结为隐式图的遍历,它的任务是找到一条从初始状态到终止状态
【蓝桥杯训练】------2n皇后问题
题目描述  给定一个n*n的棋盘,棋盘中有一些位置不能放皇后。现在要向棋盘中放入n个黑皇后和n个白皇后,使任意的两个黑皇后都不在同一行、同一列或同一条对角线上,任意的两个白皇后都不在同一行、同一列或同一条对角线上。问总共有多少种放法?n小于等于8。 输入格式 输入的第一行为一个整数n,表示棋盘的大小。   接下来n行,每行n个0或1的整数,如果一个整数为1,表示对应的位置可
蓝桥杯常用算法汇总
<memory.h>或<string.h>void *memset(void *s, int ch, size_t n); #include <algorithm>sort(a,a+n)排序函数,从小到大,a为数组名字,n为元素个数sort(vector.begin(),vector.end())排序vector只要数据类型定义了小于操作符,即可用sortsor...
历年蓝桥杯试题及常用的算法分析
这是历年蓝桥杯的试题和常用一些算法的分析,内容比较多。大家可以看看,有帮助的。
蓝桥杯 VIP 基础练习 2n皇后问题
基础练习 2n皇后问题   时间限制:1.0s   内存限制:512.0MB        问题描述   给定一个n*n的棋盘,棋盘中有一些位置不能放皇后。现在要向棋盘中放入n个黑皇后和n个白皇后,使任意的两个黑皇后都不在同一行、同一列或同一条对角线上,任意的两个白皇后都不在同一行、同一列或同一条对角线上。问总共有多少种放法?n小于等于8。 输入格式  
蓝桥杯 ADV-188 算法提高 排列数(java) 深度优先搜索 DFS
算法提高 排列数   时间限制:1.0s   内存限制:256.0MB      问题描述   0、1、2三个数字的全排列有六种,按照字母序排列如下:   012、021、102、120、201、210   输入一个数n   求0~9十个数的全排列中的第n个(第1个为0123456789)。 输入格式   一行,包含一个整数n 输出格式
21位水仙花数(花朵数 )
21位水仙花数(花朵数)的求解。
【算法小总结】广度优先搜索剖析
广度优先搜索 以前一直用搜索用的都是深搜,因为听说有很多题能用广搜就能用深搜什么的。今天老老实实的去看广搜了,结果发现我之前想的太天真的,DFS和BFS不仅在性质上不同,而且对于某些题和某些情况,用BFS比DFS要快(不是绝对)。   今天好好说道说道这个BFS(广度优先搜索)   很多问题(如过迷宫问题),每走下一步,都要考虑很多种情况,这个时候,就要每一步每一步的去试探,去找到合适的
[蓝桥杯]常用算法-穷举法
穷举法又称为枚举法,它是在计算机算法设计中用得最多的一种编程思想。它的实现方式是:在已知答案范围的情况下,依次地枚举该范围内所有的取值,并对每个取值进行考查,确定是否满足条件。经过循环遍历之后,筛选出符合要求的结果来。这种方法充分利用了计算机运算速度快的特点,思路简单直接,能够解决大部分的问题。 什么样的问题适合使用穷举法来解决呢?归纳起来,遇到了如下的三种情况,将优先考虑使用穷举法: 1. 
蓝桥杯比赛资料
蓝桥杯资料分享 蓝桥杯资料分享 蓝桥杯资料分享 蓝桥杯资料分享 蓝桥杯资料分享 蓝桥杯资料分享