图论中,用来求最短路的方法有很多,适用范围和时间复杂度也各不相同。
本文主要介绍的算法的代码主要来源如下:
Dijkstra: Algorithms(《算法概论》)Sanjoy Dasgupta, Christos Papadimitriou, Umesh Vazirani;《算法竞赛入门经典—训练指南》刘汝佳、陈峰。SPFA (Shortest Path Faster Algorit...
分类:
编程语言 时间:
2016-04-18 13:47:13
阅读次数:
348
1.地铁间谍(逆序推导时间法) 特工玛利亚被送到S市执行一个特别危险的任务。她需要利用地铁完成他的任务,S市的地铁只有一条线路运行,所以并不复杂。 玛利亚有一个任务,现在的时间为0,她要从第一个站出发,并在最后一站的间谍碰头。玛利亚知道有一个强大的组织正在追踪她,她知道如果一直呆在一个车站,她会有很 ...
分类:
编程语言 时间:
2016-04-04 17:56:58
阅读次数:
225
挂完月考又滚回来玩OI了,对于书中前几章例题,没有答案还是比较慌,找了许久也没用什么完全符合的。其中不错的有一篇写下来看看 http://wenku.baidu.com/link?url=Ofu2LHxnKm838nW3XtLBX9cGQcgOAqPIgqdg0vhOc9X0M4cSWnL_yCjd ...
分类:
编程语言 时间:
2016-03-27 18:04:58
阅读次数:
171
1 /* 2 *输入不超过1000的正整数n,输出n!=1*2*3*……*n的精确结果。 3 *样例输入:30 4 *样例输出:265252859812191058636308480000000 5 */ 6 #include <stdio.h> 7 #include <string.h> 8 #d
分类:
编程语言 时间:
2016-03-09 20:44:42
阅读次数:
157
1 /* 2 *如果一个字符串可以由某个长度为k的字符串重复多次得到,我们说该串以k为周期。例如,abcabcabcabc以3为周期(注意,它也以6和12为周期)。 3 *输入一个长度不超过80的串,输出它的最小周期。 4 *样例输入:HoHoHo 5 *样例输出:2 6 */ 7 #include
分类:
编程语言 时间:
2016-03-08 18:01:41
阅读次数:
205
1 /* 2 *在TeX中,左双引号是``,右双引号是''。输入一篇包含双引号的文章,你的任务是把它转换成TeX的格式。 3 *样例输入:"To be or not to be,"quoth the Bard,"that 4 *is the question". 5 *样例输出:``To be or
分类:
编程语言 时间:
2016-03-08 16:39:22
阅读次数:
440
1 //例题4-2 2 /* 3 *如果n和n+2都是素数,则称它们是孪生素数。输入m,输出两个数均不超过m的最大孪生素数。5<=m<=100。例如m=2时答案是17、19,m=1000时答案是881、883。 4 */ 5 6 //程序4-2 孪生素数(1) 7 #include <stdio.h
分类:
编程语言 时间:
2016-03-05 23:44:03
阅读次数:
448
//例题3-4 /* * 输入一个字符串,求出其中最长的回文子串。子串的含义是:在原串中连续出现的字符串片段。 *回文的含义是:正看着和倒看着相同,如abba和yyxyy。在判断时,应该忽略所有标点符号和空格 *且忽略大小写,但输出应保持原样(在回文串的首部和尾部不要输出多余字符)。输入字符长度不超
分类:
编程语言 时间:
2016-03-04 22:43:42
阅读次数:
417
1-1 平均数:输入3个整数,输出他们的平均值,保留3位小数#include int main(){ int a,b,c; scanf("%d%d%d",&a,&b,&c); double d=(double)(a+b+c); printf("%.3lf\n",d/3.0);...
分类:
编程语言 时间:
2016-01-20 20:46:41
阅读次数:
337
2015.11.28~2015.12.14 这27天 给自己的一个承诺NOI intensive planning:上午刷题库 下午学知识要刷的题库:1. NOI题库(每个section做两道题)2. UVa题库(根据进度走 学以致用)要看的书:1. 算法竞赛入门经典:训练指南2. CP(compa...
分类:
其他好文 时间:
2015-11-18 14:08:33
阅读次数:
122