摘要:
给定一个n个顶点的完全有向图,求从0点出发遍历所有点之后回到0点的最小路径长度。网上很多人用floyd之后再dp的算法,看起来没什么意思,这种题正是二维SPFA的用武之地,d[now,state]表示到now点,状态为state的最短路径,其中state为把遍历情况压缩为二进制数的十进制值,SPFA之后输出d[0,(1<<(n+1))-1]即可,由于习惯问题,代码中我把所有的编号都+1了。View Code 1 program pku3311(input,output); 2 type 3 node = record 4 now,state : longint;... 阅读全文