http://acm.hdu.edu.cn/showproblem.php?pid=5025
TLE了好几次
写的时候,问题在于,
1、钥匙怎么处理
参考了他人的写法,vis[key_num][i][j],相当于将图多维化,这样就可以判重了,否则只是按照普通的BFS,钥匙数不同的时候,可以重复,这个代码难易表达出来
2、蛇怎么处理
没蛇的话,第一次搜到的可行解就是最优解,
有蛇的话,...
分类:
其他好文 时间:
2014-09-27 00:53:08
阅读次数:
473
题目大意:孙悟空要找到一条花费时间最短的路径,路上为S的代表有蛇,经过需多花一分钟,其他情况下都是走过花费一分钟,但数字必须依次得到,最后到了唐僧处,可以经过也可以救出,救出前提是得到所有种类的钥匙这道题,我们不断找到到达每一个点的不同状态下的最小花费时间,用dp[N][N][11][status]...
分类:
其他好文 时间:
2014-09-25 03:20:40
阅读次数:
312
http://acm.hdu.edu.cn/showproblem.php?pid=5025蛇最多只有五条,状态压缩一下,vis增加两维,表示取得钥匙的状态和蛇的状态,然后一个优先队列的bfs即可解决问题,简单题#include #include #include #include #include...
分类:
其他好文 时间:
2014-09-24 17:22:57
阅读次数:
164
2014
ACM/ICPC Asia Regional Guangzhou Online
N*N矩阵 M个钥匙
K起点,T终点,S点需多花费1点且只需要一次,1-9表示9把钥匙,只有当前有I号钥匙才能拿I+1号钥匙,可以不拿钥匙只从上面走过
4维数组判重,第三维表示钥匙已经拿到第几把,第四维表示已经走过的S的状况,用状压存储
#include "stdio.h"
#in...
分类:
其他好文 时间:
2014-09-23 21:58:25
阅读次数:
250
1、要注意顺序问题,一定要按照这个顺序来:生成钥匙串请求 -->配置下载开发证书-->配置App ID ,配置、下载SSL证书-->Provisioning证书生成钥匙串请求1)在应用程序里的使用工具中找到钥匙串访问。2)填写你的邮箱和常用名称,常用名要记一下,CA电子邮件地址保持默认,并选择保存到...
分类:
移动开发 时间:
2014-09-23 20:46:25
阅读次数:
290
3A的题目,第一次TLE,是因为一次BFS起点到终点状态太多爆掉了时间。第二次WA,是因为没有枚举蛇的状态。解体思路:因为蛇的数目是小于5只的,那就首先枚举是否杀死每只蛇即可。然后多次BFS,先从起点到第一把钥匙,不能往回走,要用VIS数组标记。第二次从第一把钥匙走到第二把钥匙。最后一次从最后一把钥...
分类:
其他好文 时间:
2014-09-23 16:04:34
阅读次数:
252
把手中持有的钥匙状态状压一下即可,然后vis访问标记的时候,开个三维,多一维即为当前持有钥匙状态,这样就能祛除重复标记困难走点的问题,跟网络赛那题很像,网络赛的更难点,这个简单点
int n,m,t;
int sx,sy,ex,ey;
char mp[20 + 55][20 + 55];
bool vis[20 + 5][20 + 5][(1<<10) + 5];
int dir...
分类:
其他好文 时间:
2014-09-23 01:12:13
阅读次数:
330
第一步申请apple开发者账号,是要付费用户。第二步先要登陆 http://developer.apple.com下载证书,双击证书,使其添加到"钥匙串"程序,选中证书,点击钥匙串访问--〉证书助手--〉生成请求文件,登入http://developer.apple.com-->点击请求证书,选中生...
分类:
移动开发 时间:
2014-09-22 23:12:43
阅读次数:
196
题目链接:
huangjing
题意:
给了一幅图,然后这幅图里面有一个孙悟空,一个唐神,然后还有m把钥匙,还有最多5条蛇,然后蛇只要第一次杀死,杀这条蛇的时间为1S,并且后来再遇到的时候就不用加时间了,求最小的拯救时间。
思路:
首先那5条蛇可以用5位二进制数表示,然后开一个3维的数组判重,前两维保存坐标,后一维保存钥匙的状态,那么就可以了,还要注意的是因为有杀蛇这个操作,所以用优...
分类:
其他好文 时间:
2014-09-22 19:11:15
阅读次数:
249