POJ 3230 Travel 动态规划Dp
来源:互联网 发布:pi补偿网络 编辑:程序博客网 时间:2024/05/17 19:57
大致题意:
有一位旅行者想在n个城市中旅行m天,旅行从一个城市到另一个城市需要一定的花费,到一个城市又可以得到钱,但这个钱会随着时间变化,现在求最大利润。
数据范围n,m<100
很容易想到dp
f[i][j]表示第i天到城市j的最大利润
转移方程 f[i][j] = max( f[i-1][k] - cost[k][j] + earn[i][j] )
#include <cstdio>#include <cstring>#include <cmath>#include <string>#include <cstdlib>#include <algorithm>#include <iostream>using namespace std;int n,m;int f[110][110];int c[110][110];int w[110][110];int main(){while(scanf("%d%d",&n,&m)){if(n == 0 && m == 0)break;for(int i = 1; i <= n; i++)for(int j = 1; j <= n; j++)scanf("%d",&c[i][j]);for(int i = 1; i <= m; i++)for(int j = 1; j <= n; j++)scanf("%d",&w[i][j]);memset(f,195,sizeof(f));for(int i = 1; i <= n; i++)f[1][i] = w[1][i] - c[1][i];for(int i = 2; i <= m; i++)for(int j = 1; j <= n; j++)for(int k = 1; k <= n; k++)f[i][j] = max(f[i][j],f[i-1][k] + w[i][j] - c[k][j]);int ans = f[0][0];for(int i = 1; i <= n; i++)if(ans < f[m][i])ans = f[m][i];cout << ans << endl;}return 0;}
0 0
- POJ 3230 Travel 动态规划Dp
- poj 3230 Travel 简单dp
- [水+dp] poj 3230 Travel
- POJ3230 - Travel - 动态规划
- POJ 2955 DP动态规划
- poj 2192-动态规划-DP
- POJ 1163 DP 动态规划
- 水水的DP Travel POJ 3230
- POJ 3230 Travel(朴素DP)
- POJ 2181Jumping Cows 动态规划DP
- POJ 1837 Balance(DP动态规划)
- poj 1038 动态规划(dp)
- POJ 1157动态规划简单DP
- poj DP(动态规划)题集
- POJ 1821 Fence 【DP动态规划】
- POJ 2353 Ministy 动态规划 双向DP
- poj 动态规划DP - 1125 Stockbroker Grapevine
- poj 动态规划DP - 1163 The Triangle
- C语言setreuid()函数:设置真实及有效的用户识别码
- 安卓项目之淘忆2.0的代码实现之欢迎引导功能
- HDU 5274 Chess(SG博弈)---2016 Multi-University Training Contest 1
- NDK与游戏开发
- BootStrap 分页组件
- POJ 3230 Travel 动态规划Dp
- 源码-PL/SQL从入门到精通-第九章-SQL内置函数-Part 3
- [Funkunux] Linux_2.6.22.6 内核start_kernel函数分析之console_init
- java.util.Calendar.getTime()方法实例
- VPP NAT测试,不支持VLAN,在NAT下arp学习有问题,需要手动添加;直连接口ICMP不支持,
- mac下tomcat的安装和配置(转载)
- BootStrap 标签
- 模拟spring依赖注入,自定义注入类
- 阿里云ECS(CentOS)上安装PostgreSQL9.4