2014年1月22日

A Knight's Journey

摘要: poj2488:http://poj.org/problem?id=2488题意:给你一张地图,然后有一个骑士,骑士可以从地图的任意一个方格开始,作为起点,问你该骑士能否走遍整张题图。题解:首先想到就是DFS,但是要对每个点进行一次DFS,时间复杂度估计hold不住,后来一想,有些点,不必搜索。因为已经收过,所以可以采取记忆化搜索。但是这一题的难点不是这里,在于所谓的字典序输出,一开始不知道这里的字典序是指什么。后来才知道,就是找字母小的,字母相同就找数字小的,这样一来搜索到额顺序就确定了。#include#include#include#include#includeusing namesp 阅读全文

posted @ 2014-01-22 22:05 天依蓝 阅读(611) 评论(0) 推荐(0) 编辑

Children of the Candy Corn

摘要: poj3083:http://poj.org/problem?id=3083题意:给你一个迷宫,然后给你一个起点和终点,现在给你种规则,一种是先向左,无法向左则向前,无法向前则向右,否则则向后,另外一种就是求最短路程,然后一种就先向右,向前,向左,向后,分别求出这三种情况下所走的路程。题解:求最短的路程只需BFS即可,先向左可以DFS,每次DFS记录来自的方向,对于不同的方向,采取不同的搜索顺序,即可。向右的同理。#include#include#include#include#includeusing namespace std;char map1[42][42];int counts[42 阅读全文

posted @ 2014-01-22 21:42 天依蓝 阅读(219) 评论(0) 推荐(0) 编辑

Dungeon Master

摘要: poj2251:http://poj.org/problem?id=2251题意:给你一个三维的立方体,然后给你一个起点,和终点的坐标。然后让你求从起点到终点的最短路程。题解:该题就是求三维的最短路,可以采用BFS,三维的BFS。#include#include#include#include#includeusing namespace std;int counts[32][32][32];//记录到起点的最短距离struct Node{ int x; int y; int z; int step;};int n,m,l;//长,宽,高char map1[32][32][32... 阅读全文

posted @ 2014-01-22 21:30 天依蓝 阅读(365) 评论(0) 推荐(0) 编辑

导航