hdu1010专题

hdu1010 奇偶剪枝

恰好t时间到达 import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.io.PrintWriter;import java.math.BigInteger;import java.util.Arrays;import

hdu1010矩形图的搜索

/*给出地图和步数,在有墙的图内从起点到终点,判断能否在输入的步数内走完*/ #include<iostream>#include<cstdio>#include<algorithm>using namespace std;int sx,sy,ex,ey;int n,m;char map[10][10];int flag;int d[4][2]={0,1,1,0,0,-1,-

HDU1010 Temper of the Bone

刚刚上实验课,榨果汁。。。自觉学不到什么东西,就来到了机房,看看HDU上的题。一道搜索,其中包含了几个我从没想到过的剪枝方法,例如奇偶剪枝、路径剪枝还有在主函数中的一个剪枝,诸见代码与注释,虽然看起来没什么用的剪枝没准会遇到变态的测试数据导致最后的完蛋,所以只要能想到的剪枝就尽量写上去。 注:这题的代码来自标程。 /*Exe.Time Exe.Memory Code Len. La

hdu1010_tempter_of_the_Bone(dfs减枝)

题目大意:在一个矩阵之中从S到D在规定的时间到达,不能走回头路。题目的连接hdu1010 解题思路:因为到达的时间是固定的,因此使用广度优先遍历是不行的,广度优先遍历只能找到由S到达D的最小时间而不能找到规定的时间。因此要使用深度优先遍历,而深度优先遍历要注意减枝来提高最终的效率。 设当前的坐标为i,j。那么由当前位置到终点 (ex,ey)的最短距离为以两个点为对角线的矩形的长和宽之和减2,或