hdu4540 威威猫系列故事——打地鼠(简单DP)
来源:互联网 发布:手机网络超时怎么解决 编辑:程序博客网 时间:2024/05/21 08:02
虽然简单DP,但我还是想了半天。。。
状态方程:dp[i][j] = min(dp[i][j], dp[i - 1][l] + abs(a[i - 1][l] - a[i][j])) (0 <= l <= k)。
把k的坐标写在数组里当成花费,从上往下规划,该层每个点都是前面节点经过此节点的最小能量消耗。
#include <stdio.h>#include <cstring>#include <algorithm>using namespace std;const int N = 55;const int INF = 1<<27;int main(){ // freopen("in.txt", "r", stdin); int a[N][N], dp[N][N]; int j, i, n, k, num; while(~scanf("%d%d", &n, &k)) { num = INF; for(i = 0; i < n; i ++) for(j = 0; j < k; j ++) scanf("%d", &a[i][j]); memset(dp, 0, sizeof(0)); for(i = 1; i < n; i ++) for(j = 0; j < k; j ++) { dp[i][j] = INF; for(int l = 0; l < k; l ++) dp[i][j] = min(dp[i][j], dp[i - 1][l] + abs(a[i - 1][l] - a[i][j])); } for(i = 0; i < k; i ++) num = min(num, dp[n - 1][i]); printf("%d\n", num); } return 0;}
0 0
- hdu4540 威威猫系列故事——打地鼠(简单DP)
- hdu4540 - 威威猫系列故事——打地鼠 (经典dp)
- hdu4540 威威猫系列故事——打地鼠 (dp)
- hdu4540(威威猫系列故事——打地鼠)-线性dp
- HDU4540 ——威威猫系列故事——打地鼠
- HDU4540 威威猫系列故事——打地鼠
- hdu4540 威威猫系列故事——打地鼠
- hdu4540 威威猫系列故事——打地鼠 (动态规划)
- HDU4540 威威猫系列故事——打地鼠 and 1176免费馅饼
- HDU4540打地鼠 (DP)
- HDU 4540 威威猫系列故事——打地鼠(简单DP)
- HDOJ4540 威威猫系列故事——打地鼠 【DP】
- hdu 4540 威威猫系列故事——打地鼠 dp
- hdoj4540威威猫系列故事——打地鼠【dp】
- hdu 4540 威威猫系列故事——打地鼠(DP)
- 威威猫系列故事——打地鼠(简单Dp填数)
- 威威猫系列故事——打地鼠
- 威威猫系列故事——打地鼠
- 函数式编程思想
- java(15)--servlet中Request相关知识
- Aapche自带的并发测试工具
- 一起看代码来玩玩QT之04 Layout
- 数组名的指针
- hdu4540 威威猫系列故事——打地鼠(简单DP)
- 无线热点(AP)不稳定之信道的配置优化实践-分析周围信道修改本地使用信道
- golang走起(四)执行命令行
- iOS开发证书都显示“此证书的签发者无效”,更新WWDR Certificate证书后还是显示无效
- Android:获取版本号
- latex学习2:Mathjax与LaTex公式简介
- ZMQ源码分析(九)--其他socket_base模型
- something about倒排索引
- Android:读取文件