题意 一只狗要逃离迷宫 可以往上下左右4个方向走 每走一步耗时1s 每个格子只能走一次且迷宫的门只在t时刻打开一次 问狗是否有可能逃离这个迷宫
直接DFS 直道找到满足条件的路径 或者走完所有可能路径都不满足
注意剪枝 当前位置为(r,c) 终点为(ex,ey) 剩下的时间为lt 当前点到终点的直接距离为 d=(ex-r)+(ey-c) 若多走的时间rt=lt-d
...
分类:
其他好文 时间:
2014-10-12 22:07:58
阅读次数:
249
(1)图片如果是png格式的话,在代码中可以省略后缀。
(2)可以给控件一个tag值,然后用viewWithTag获取这个控件。
(3)transform的上下左右移动是按照它的上下左右边框垂直的方向移动的,即如果你把控件旋转了,那么上下左右就不是传统的上下左右,而是斜着的上下左右。...
分类:
移动开发 时间:
2014-10-12 12:20:17
阅读次数:
183
UVA 810 - A Dicey Problem
题目链接
题意:一个骰子,给你顶面和前面,在一个起点,每次能移动到周围4格,为-1,或顶面和该位置数字一样,那么问题来了,骰子能不能走一圈回到原地,输出路径,要求最短,如果有多个最短,按照上下左右输出
思路:读懂题就是水题,就记忆化搜一下即可,记录状态为位置和骰子顶面,正面(因为有两面就能确定骰子了)
代码:
#in...
分类:
其他好文 时间:
2014-10-10 21:21:24
阅读次数:
323
先上效果图:
动画效果有点差.....
代码:
package com.example.scrolltextview;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import android.content.Context;
import android.content...
分类:
其他好文 时间:
2014-10-10 12:51:24
阅读次数:
257
题目链接:http://poj.org/problem?id=3020题目大意:读入一张地图。其中地图中圈圈代表可以布置卫星的空地。*号代表要覆盖的建筑物。一个卫星的覆盖范围是其周围上下左右四个点。问最少需要几个卫星才能覆盖所有建筑物。解题思路:有点类似POJ 1328的覆盖题,不过那题比较简单可以...
分类:
其他好文 时间:
2014-10-07 22:21:04
阅读次数:
202
题意:给你一个高L长R宽C的图形,每一个坐标都可以视为一个方格,你一次可以向上,下,左,右,前,后任一方向移动一个方格, 但是不能向有#标记的方格移动。
问:从S出发能不能到达E,如果能请输出最少的移动次数。
策略:简单的深搜。
注意:因为是求最少的移动次数,所以要从所有能到达的中选出最少的。
代码:
#include
#include
#include
#include
usi...
分类:
其他好文 时间:
2014-10-07 15:58:53
阅读次数:
134
理论;生命游戏(game of life)為1970年由英国数学家J. H. Conway所提出,某一细胞的邻居包括上、下、左、右、左上、左下、右上与右下相邻之细胞,游戏规则如下:孤单死亡:如果细胞的邻居小於一个,则该细胞在下一次状态将死亡。拥挤死亡:如果细胞的邻居在四个以上,则该细胞在下一次状态将...
分类:
其他好文 时间:
2014-10-05 15:05:58
阅读次数:
119
在一个n*n的矩阵里走,从原点(0,0)开始走到终点(n-1,n-1),只能上下左右4个方向走,只能在给定的矩阵里走,求最短步数。n*n是01矩阵,0代表该格子没有障碍,为1表示有障碍物。
int mazeArr[maxn][maxn]; //表示的是01矩阵
int stepArr[4][2] = {{-1,0},{1,0},{0,-1},{0,1}}; //表示上下左右4个方向
...
分类:
其他好文 时间:
2014-10-03 11:04:04
阅读次数:
200
通用(General)↑↓←→:上下左右移动光标,注意不是不是KJHL!Alt:调出菜单Ctrl+Shift+P:调出命令板(CommandPalette)Ctrl+`:调出控制台编辑(Editing)Ctrl+Enter:在当前行下面新增一行然后跳至该行Ctrl+Shift+Enter:在当前行上面增加一行并跳至该行Ctrl+←/→:进行..
分类:
其他好文 时间:
2014-10-01 00:27:01
阅读次数:
172
题目意思很简单,意思就是求一个图上最近点对。具体思想就是二分法,这里就不做介绍,相信大家都会明白的,在这里我说明一下如何进行拼合。具体证明一下为什么只需要检查6个点首先,假设当前左侧和右侧的最小值为d,那么对于一个点,如果有个最小值小于d,那么一定存在于上d下d左d右d的一块区域内,又因为是从左到右...
分类:
其他好文 时间:
2014-09-27 00:22:18
阅读次数:
192