2011年11月14日
摘要: UVA_12295 之前最早使用SPFA+qsort实现的优先队列写的这个题目,今天又重新用不同的方式写了一遍这个题目,即SPFA+手写堆实现的优先队列,SPFA+记忆化搜索,在Dij的过程中顺便记录路径条数等这样三种方式。 写完之后,和预想的一样SPFA+手写堆实现的优先队列是最慢的,但对于剩下两个写法感觉得到的结论和网上看到的一篇文章写的不太一样,他说对于网格类数据Dij要明显比SPFA快一些,但就我的测试结果来看,实际上SPFA最后再加一个记忆化搜索所需的时间都要比Dij更快一些(Dij只是顺便记录了路径条数)。当然,也有可能是我自己写的堆优化的Dij效率比较低,而且我在本地用的是1.. 阅读全文
posted @ 2011-11-14 16:18 Staginner 阅读(283) 评论(0) 推荐(0) 编辑
摘要: UVA_825 一个比较容易的计数问题,如果(i,j)这个点可以通过的话f[i][j]=f[i-1][j]+f[i][j-1],否则f[i][j]=0。#include<stdio.h>#include<string.h>#include<ctype.h>#define MAXD 1010char b[10010];int N, M, G[MAXD][MAXD], f[MAXD][MAXD];void solve(){ int i, j, k; gets(b); sscanf(b, "%d%d", &N, &M); mem 阅读全文
posted @ 2011-11-14 00:17 Staginner 阅读(416) 评论(0) 推荐(0) 编辑