动态规划

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<time.h>
using namespace std;
#define inf 0x3f3f3f3f
int V[][],dp[][][];
int min(int a,int b){
return a<b?a:b;
}
int main()
{
freopen("input4.txt","r",stdin);
freopen("output.txt","w",stdout);
int start=clock();//从这开始计时
int ca=,T,i,j,k,n,m;
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&m);
for(i=;i<n;++i)
for(j=;j<m;++j) scanf("%d",&V[i][j]);
printf("Case #%d: ",ca++);
memset(dp,inf,sizeof(dp));
dp[][][V[][]]=V[][]*V[][];
for(i=;i<n;++i)
for(j=;j<m;++j)
{
if(i+<n){
for(k=;k<=*;++k)
if(dp[i][j][k]!=inf)
dp[i+][j][k+V[i+][j]]=min(dp[i+][j][k+V[i+][j]],dp[i][j][k]+V[i+][j]*V[i+][j]);
}
if(j+<m){
for(k=;k<=*;++k)
if(dp[i][j][k]!=inf)
dp[i][j+][k+V[i][j+]]=min(dp[i][j+][k+V[i][j+]],dp[i][j][k]+V[i][j+]*V[i][j+]);
}
}
int ans=inf;
for(i=;i<=*;++i)
if(dp[n-][m-][i]!=inf)
ans=min(ans,(n+m-)*dp[n-][m-][i]-i*i);
printf("%d\n",ans);
}
int end=clock();//到这结束
printf("%d ms\n",end-start);//算出来的单位是毫秒
return ;
}
#include<stdio.h>
#include<string.h>
#define inf 0x3f3f3f3f
int dp[][][];
int v[][];
int min(int a,int b){
return a<b?a:b;
}
int main(){
int t,n,m,cur=,i,j,k;
//freopen("input4.txt","r",stdin);
//freopen("output.txt","w",stdout);
scanf("%d",&t);
while(t--){
printf("Case #%d: ",cur++);
scanf("%d %d",&n,&m);
for(i=;i<=n;i++){
for(j=;j<=m;j++)
scanf("%d",&v[i][j]);
}
memset(dp,inf,sizeof(dp));
dp[][][v[][]]=v[][]*v[][];
for(i=;i<=n;i++){
for(j=;j<=m;j++){
if(j+<=m){//向右
for(k=;k<=*;k++){
if(dp[i][j][k]!=inf)
dp[i][j+][k+v[i][j+]]=min(dp[i][j+][k+v[i][j+]],dp[i][j][k]+v[i][j+]*v[i][j+]);
}
}
if(i+<=n){//向下
for(k=;k<=*;k++){
if(dp[i][j][k]!=inf)
dp[i+][j][k+v[i+][j]]=min(dp[i+][j][k+v[i+][j]],dp[i][j][k]+v[i+][j]*v[i+][j]);
}
} }
}
int ans=inf;
for(i=;i<=*;i++){
if(dp[n][m][i]!=inf)
ans=min(ans,(n+m-)*dp[n][m][i]-i*i);
}
printf("%d\n",ans); }
return ;
}

hdu 5492的更多相关文章

  1. 2015合肥网络赛 HDU 5492 Find a path 动归

    HDU 5492 Find a path 题意:给你一个矩阵求一个路径使得 最小. 思路: 方法一:数据特别小,直接枚举权值和(n + m - 1) * aver,更新答案. 方法二:用f[i][j] ...

  2. 【动态规划】HDU 5492 Find a path (2015 ACM/ICPC Asia Regional Hefei Online)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5492 题目大意: 一个N*M的矩阵,一个人从(1,1)走到(N,M),每次只能向下或向右走.求(N+ ...

  3. HDU 5492(DP) Find a path

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5492 题目大意是有一个矩阵,从左上角走到右下角,每次能向右或者向下,把经过的数字记下来,找出一条路径是 ...

  4. HDU 5492 Find a path

    Find a path Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ID ...

  5. hdu 5492 Find a path(dp+少量数学)2015 ACM/ICPC Asia Regional Hefei Online

    题意: 给出一个n*m的地图,要求从左上角(0, 0)走到右下角(n-1, m-1). 地图中每个格子中有一个值.然后根据这些值求出一个最小值. 这个最小值要这么求—— 这是我们从起点走到终点的路径, ...

  6. hdu 5492 (暴力+nice)

    题意:在矩阵中,找一条路从 (1,1)->(n,m),使方差最小 思路: T = (N+M−1)∑N+M−1i=1(Ai−Aavg)2 将N + M - 1乘进去,即求1 ~ N+M-1,(N ...

  7. Find a path HDU - 5492 (dp)

    Find a path Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  8. HDU - 5492 Find a path(方差公式+dp)

    Find a path Frog fell into a maze. This maze is a rectangle containing NN rows and MM columns. Each ...

  9. HDOJ 2111. Saving HDU 贪心 结构体排序

    Saving HDU Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

随机推荐

  1. Java Connection.setAutoCommit

    Java setAutoCommit 默认为true,即每条SQL语句在各自的一个事务中执行. 很多时候需要有多个操作在一个事务执行,如循环插入,此时可在插入开始前设置 conn.setAutoCom ...

  2. web页面的加载顺序

    1.页面顺序 一个典型的web页面由于三个部分组成:html.css和JS.执行的顺序是: 在构造完HTML的dom结构时.触发DOMContentLoaded事件. 整个执行过程安装html的顺序来 ...

  3. php基础语句2

    计算一个月有多少天 $count = date("t",strtotime("2014-09-01")); // 一个月有多少天

  4. 年轻人,你活着不是为了观察K线做布朗运动

    谈股票市场的赚钱陷阱 年轻人,你活着不是为了观察K线做布朗运动 作者:李晓鹏(2015-01-10) 这篇文章本来是该两年前写的,奉劝大家不要去玩股票.因为那个时候我的<中国崛起的经济学分析&g ...

  5. Spring系列之beanFactory与ApplicationContext

    一.BeanFactoryBeanFactory 是 Spring 的“心脏”.它就是 Spring IoC 容器的真面目.Spring 使用 BeanFactory 来实例化.配置和管理 Bean. ...

  6. NSURLSession & NSCache

    用于替代 NSURLConnection 支持后台运行的网络任务 暂停.停止.重启网络任务,不再需要 NSOperation 封装 请求可以使用同样的配置容器 不同的 session 可以使用不同的私 ...

  7. C#技术漫谈之垃圾回收机制(GC)(转)

    GC的前世与今生 虽然本文是以.NET作为目标来讲述GC,但是GC的概念并非才诞生不久.早在1958年,由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能,这是 ...

  8. Linux下,telnet命令如何退出

    测试连接本地的memcached telnet 链接后是这样的: wangkongming@Vostro ~ $ telnet Trying 127.0.0.1... Connected to 127 ...

  9. WebService 之 WSDL文件 讲解

    原文地址:http://blog.csdn.net/tropica/archive/2008/11/02/3203892.aspx 恩,我想说的是,是不是经常有人在开发的时候,特别是和第三方有接口的时 ...

  10. JavaScript实现联想校招员工信息展示

    原文摘自我的前端博客,欢迎大家来访问 http://www.hacke2.cn 起因 今天和豪哥聊天,才知道他是我老乡,而且特别近..真的感觉他是我的贵人,这是他从 联想校招扣出来的,我们就用Java ...