ACM: HDU 2563 统计问题-DFS+打表
HDU 2563 统计问题 Time Limit: 1000MS Memory Limit: 32768KB 64bit IO Format: %I64d & %I64u HDU 2563 Description 在一无限大的二维平面中,我们做如下假设: 1、 每次只能移动一格; 2、 不能向后走(假设你的目的地是“向上”,那么你可以向左走,可以向右走,也可以向上走,但是不可以向下走); 3、 走过的格子立即塌陷无法再走第二次; 求走n步不同的方案数(2种走法只要有一步不一样,即被认为是不同的方案)。 Input 首先给出一个正整数C,表示有C组测试数据 接下来的C行,每行包含一个整数n (n<=20),表示要走n步。 Output 请编程输出走n步的不同方案总数; 每组的输出占一行。 Sample Input 2 1 2 Sample Output 3 7 /*/ 中文题,有点类似以前做过的小蜜蜂那题,规定一个方向后只能沿着三个方向去移动了。所以每次移动只有3种方向可以走,而且还要标记是否已经走过这条路,所以思路很清楚直接DFS。但是DFS会TLE,输入的数字在1~20,数据不多,直接打表。 AC代码: /*/ #include"map" #include"cmath" #include"string" #include"cstdio" #include"vector"