第一篇博客,特别鸣谢QYQYQYQYQYQ!巨大的帮助啊啊啊。
这道题目是锻炼代码实现能力的!然后嘛,作为我的第一篇CSDN博客,先撒花!+_+*******
________________________________________分隔线一_______________________________________
【简介】思路很简单,建图跑最短路。最短路用SPFA、堆优化的dij、floyd三种方法都可以。难点在于建图过程,正如开头所说的,代码实现能力。
【注意1-输入】
1.题目说用整数输入,就不要随便用浮点数输入
2.scanf后面不要带++,否则会出现玄学错误
3.注意循环变量不要for(i)里面套for(i)
【注意2-码风】
1.用double不用float,为了更优的精度
2.整形的初始化,可以不用手动地for循环,而是memset(d,0x3f,sizeof(d));
【注意3-准确性】
1.多组数据,初始化
2.重载小根堆是像下面这样的,不要打反了
【注意4-debug】
1.查错可以有脑子有逻辑地输出必要的数据,避免像无头苍蝇乱撞
2.多组数据的话,自己测一组多组数据的数据再交(真拗口)——可以选择跑两组同样的数据,这是策略
________________________________________分隔线二_______________________________________
来自luoguP1027的最短路,题面如下: