题目大意:求恰好走k步从S到T的最短路。
思路:设f[p][i][j]为从i到j恰好走2^p步的最短路,DP方程十分简单:f[p][i][j] = min(f[p][i][j],f[p - 1][i][k] + f[p - 1][k][j]);
对总步数T进行二进制拆分,在T有1的位置上,假如这个位置为p,那么就用f[p][][]来更新答案g[][],最后得到的g[][]就是答案矩阵。...
分类:
其他好文 时间:
2014-12-30 09:16:17
阅读次数:
184
**下列方法比较粗暴,慎重使用,我的是实验环境。** 今天想试试 Docker,结果发现几乎所有命令都不能工作了。经过调查,发现是 Docker 的镜像和 btrfs 目录占用了大部分的空间。于是先删除了 Docker 的镜像 `sud...
分类:
其他好文 时间:
2014-12-22 14:40:40
阅读次数:
157
题意:给你一个m条边的图,求s到t的正好用k条边的最短路。
(输入k,t,s,t)
题解:
先说说暴力。
动规f[k][i][j]表示i到j经过k条边的最短路,然后外层循环k一遍遍跑最后出解。
显然大概率T。
然后有一种思路:
我们可以动规求得f[k][i][j]表示i到j经过k条边的最短路,然后再求g[i]表示从终点走i步回到终点的最短路。
这样我们就可以乱搞过了。(没写...
分类:
其他好文 时间:
2014-12-22 11:13:02
阅读次数:
168
1 #include 2 #include 3 using namespace std; 4 int main() 5 { 6 int n; 7 char s1[2020],s2[2020]; 8 scanf("%d",&n); 9 for (int i=0;is1...
分类:
其他好文 时间:
2014-12-20 00:39:38
阅读次数:
285
1635: [Usaco2007 Jan]Tallest Cow 最高的牛Time Limit:5 SecMemory Limit:64 MBSubmit:383Solved:211[Submit][Status]DescriptionFJ's N (1 = h[a]Input* Line 1: F...
分类:
其他好文 时间:
2014-12-17 22:38:32
阅读次数:
329
首先上一下单纯的二叉树插入节点的代码,用的是不返回新根节点的方式: 1 void insertNode(BTree *&root,int data) 2 { 3 if (root == nullptr)//当根节点为NULL时,在根节点上插入 4 { 5 root =...
分类:
其他好文 时间:
2014-12-16 23:53:45
阅读次数:
425
1648: [Usaco2006 Dec]Cow Picnic 奶牛野餐Time Limit:5 SecMemory Limit:64 MBSubmit:432Solved:270[Submit][Status]DescriptionThe cows are having a picnic! Eac...
分类:
其他好文 时间:
2014-12-16 22:18:59
阅读次数:
320
1641: [Usaco2007 Nov]Cow Hurdles 奶牛跨栏Time Limit:5 SecMemory Limit:64 MBSubmit:424Solved:272[Submit][Status]DescriptionFarmer John 想让她的奶牛准备郡级跳跃比赛,贝茜和她的...
分类:
其他好文 时间:
2014-12-16 22:15:12
阅读次数:
281
这两天有个很强烈的感觉就是自己在一些特别的情况下还是hold不住,脑子容易放空或者说一下子不知道怎么去分析问题了,比如,问“hash和btree索引的区别”,这很难吗,只要掌握了这两种数据结构稍加分析就能得出答案,结果是一下子不知道从何说起。进入正题吧,这两者有啥区别。
1. hash索引查找数据基本上能一次定位数据,当然有大量碰撞的话性能也会下降。而btree索引就得在节点上挨着查找了,很...
分类:
数据库 时间:
2014-12-16 17:09:40
阅读次数:
237