PKU 3311 Hie with the Pie 状态DP
2014-04-24 02:06
120 查看
Floyd + 状态DP
Watashi的板子
View Code
Watashi的板子
#include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; const int INF = (int) 1e8; int dp[1<<11][11]; //dp[S][v] 表示还需访问的集合为S, 现在在v点 int d[11][11]; int n; void floyd() { for (int k = 0; k <= n; k++) { for (int i = 0; i <= n; i++) for (int j = 0; j <= n; j++) d[i][j] = min(d[i][j], d[i][k]+d[k][j]); } } void print() { for (int i = 0; i <= n; i++) { for (int j = 0; j <= n; j++) printf("%d ", d[i][j]); puts(""); } } int main() { #ifdef Phantom01 freopen("PKU3311.txt", "r", stdin); #endif // Phantom01 while (scanf("%d", &n)!=EOF) { if (0==n) break; for (int i = 0; i <= n; i++) for (int j = 0; j <= n; j++) scanf("%d", &d[i][j]); // print(); floyd(); // print(); for (int i = 0; i <= n; i++) for (int S = 0; S < (1<<(n+1)); S++) dp[S][i] = INF; dp[(1<<(n+1))-1][0] = 0; for (int S = (1<<(n+1))-2; S >= 0; S--) { for (int v = 0; v <= n; v++) { for (int u = 0; u <= n; u++) { if (!(S&(1<<u))) { if (dp[S][v] < 0) { dp[S][v] = dp[S|(1<<u)][u] + d[v][u]; } else { dp[S][v] = min(dp[S][v], dp[S|(1<<u)][u] + d[v][u]); } } } } } printf("%d\n", dp[0][0]); } return 0; }
View Code
相关文章推荐
- [状态压缩DP] PKU 3311 Hie with the Pie
- POJ3311——Hie with the Pie(floyd,状态压缩dp,旅行商)
- poj 3311 Hie with the Pie (floyd+状态压缩dp~)
- poj 3311 Hie with the Pie(状态压缩dp)
- POJ 3311 Hie with the Pie(Floyd+状态压缩DP)
- POJ 3311 Hie with the Pie (状态压缩DP ,tsp问题)
- POJ 3311 Hie with the Pie (Floyd + 暴力全排列 || Floyd + 状态压缩DP (已补充))
- POJ 3311 Hie with the Pie 状态压缩DP+floyd
- poj 3311 Hie with the Pie(状态压缩dp)
- POJ 3311 Hie with the Pie -- TSP 状态压缩dp
- POJ 3311 Hie with the Pie //状态压缩DP
- POJ 3311 Hie with the Pie(Floyd+状态压缩DP)
- poj 3311 Hie with the Pie(状态压缩DP+floyd)
- poj 3311 Hie with the Pie (floyd+状态压缩dp)
- POJ 3311 Hie with the Pie(状态压缩DP)
- POJ 3311 Hie with the Pie(状态压缩DP+Floyd)
- 状态压缩DP-Hie With the Pie(POJ 3311)
- POJ 3311 Hie with the Pie【状态压缩DP】
- POJ 3311 Hie with the Pie (状态压缩DP)
- POJ 3311 Hie with the Pie(Floyd+状态压缩DP)