遗传算法的简单应用,关于巡回旅行商(TSP)的求解问题,采用了C#语言实现的。
分类:
编程语言 时间:
2015-06-21 07:02:38
阅读次数:
306
状态压缩DPDP过程中的状态不可能像背包问题一样只有整数,肯定有各种各样稀奇古怪的状态,需要不止一个变量来表示。这种情况下如果需要使用DP 就必须把状态压缩成一个数来表示,并且一个数只能对应于一种状态。特别地,对于集合我们可以把每一个元素的选取与否对应到一个二进制位里,从而把状态压缩成一个整数,大大方便了计算和维护。对于不是整数的情况,很多时候很难确定一个合适的递推顺序,因此使用记忆化搜索可以避免这...
分类:
其他好文 时间:
2015-05-25 11:30:38
阅读次数:
203
题意:tsp问题,但是每个点可以最多走两次链接:点我转移方程见代码#include#include#include#includeusing namespace std;#define inf 0x3f3f3f3fint State[12];int vis[60000][12];int dp[600...
分类:
其他好文 时间:
2015-05-12 11:07:45
阅读次数:
120
标准的TSP问题
m*n矩阵,有不超过10个需要走到的点,给出起点,问走最少的步子把所有点走完
BFS出每个必须走到的点的最短距离
然后状压DP即可
#include "stdio.h"
#include "string.h"
#include "queue"
using namespace std;
const int dir[4][2]={ {1,0},{-1,0},{0,1},{0...
分类:
其他好文 时间:
2015-04-28 21:08:19
阅读次数:
145
// hdu 3001 TSP问题的变形
// 这次到每个点最多两次,所以可以用三进制的类推
// dp[S][u]表示当前在u点访问状态为S时所得到的最小的开销
// 采用刷表法,即用当前的状态推出它所能转移的状态
// dp[S][u] 可以到达的状态为dp[S+state[v]][v](dist[u][v]!=inf)
// dp[S+state[v]][v] = max(dp[S+stat...
分类:
其他好文 时间:
2015-04-15 01:03:10
阅读次数:
148
TunnelsTime Limit: 3000/1500 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1460Accepted Submission(s): 435Problem Desc...
分类:
其他好文 时间:
2015-04-07 13:24:53
阅读次数:
143
问题来源:刘汝佳《算法竞赛入门经典--训练指南》 P61 问题9:问题描述:有n(n<=15)个城市,两两之间均有道路直接相连,给出每两个城市i和j之间的道路长度L[i][j],求一条经过每个城市一次且仅一次,最后回到起点的路线,使得经过的道路总长度最短(城市编号为0~n-1)。分析:1.因为最后走...
分类:
其他好文 时间:
2015-04-01 21:32:58
阅读次数:
421
Description
The Pizazz Pizzeria prides itself in delivering pizzas to its customers as fast as possible. Unfortunately, due to cutbacks, they can afford to hire only one driver to do the deliveri...
分类:
其他好文 时间:
2015-04-01 15:32:04
阅读次数:
195
POJ 3311 Hie with the Pie (Floyd + 状压dp 简单TSP问题)...
分类:
其他好文 时间:
2015-02-21 06:32:15
阅读次数:
212
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=3001题意:n 个城市已经 m 条路 以及对应路费 c,要求遍历所有城市最少的路费,每个城市不能超过2次。分析:和TSP问题差不多,只不过变成三进制的状压,dig[i][j]表示在状态i下在点j已经做过的...
分类:
其他好文 时间:
2015-02-04 14:25:10
阅读次数:
176