博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NYOJ740
阅读量:5812 次
发布时间:2019-06-18

本文共 2113 字,大约阅读时间需要 7 分钟。

题目连接:http://acm.nyist.net/JudgeOnline/talking.php?pid=740

来看思路:

首先我们先设dp[i][j][k] 为第i个点的时候左脚在j点右脚在k点

先固定一只脚的位置j,第i次踩踏后,状态为dp[i][j][a[i]]或者dp[i][a[i]][j],其中a[i]表示第i个输入

x=dp[i-1][k][j]+cost[k][a[i]]; 是通过k踩过来的,cost[k][a[i]]表示k->a[i]的花费。

y=dp[i-1][j][k]+cost[k][a[i]]; 是通过k踩过来的,cost[k][a[i]]表示k->a[i]的花费。

dp[i][j][a[i]]=dp[i][a[i]][j]=min(x,y);

#include
#include
#include
int dp[10001][6][6];int a[10001];int cost[6][6]={{
1,2,2,2,2},{
0,1,3,4,3},{
0,3,1,3,4},{
0,4,3,1,3},{
0,3,4,3,1}};int main(){ int i,j,k,n,ans,x,y,t; while(scanf("%d",&t)&&t!=0) { a[1] = t; for(n = 2;;n++) { scanf("%d",&a[n]); if(!a[n]) { break; } } for(i = 0;i <= n;i++) for(j = 0;j < 5;j++) for(k = 0;k < 5;k++) dp[i][j][k] = 100000005; dp[0][0][0] = 0; ans = 100000005; for(i = 1;i < n;i++) { for(j = 0;j < 5;j++) //先确定一只脚不动 { if(j == a[i])continue; x = y = 100000005; for(k = 0;k < 5;k++) //左脚动 { if(k != j||k + j == 0) { if(x > dp[i - 1][k][j] + cost[k][a[i]]) { x = dp[i - 1][k][j] + cost[k][a[i]]; } } } for(k = 0;k < 5;k++) //右脚动 { if(k != j||k + j == 0) { if(y > dp[i - 1][j][k] + cost[k][a[i]]) { y = dp[i - 1][j][k] + cost[k][a[i]]; } } } if(x > y)x = y; dp[i][a[i]][j] = dp[i][j][a[i]] = x; //左脚和右脚是可以相互转换的 if(ans > dp[n - 1][j][a[i]])ans = dp[n - 1][j][a[i]]; } } printf("%d\n",ans); } return 0;}

 

转载于:https://www.cnblogs.com/zhanyage110/p/4145237.html

你可能感兴趣的文章
数据指标/表现度量系统(Performance Measurement System)综述
查看>>
GitHub宣布推出Electron 1.0和Devtron,并将提供无限制的私有代码库
查看>>
Angular2, NativeScript 和 React Native比较[翻译]
查看>>
论模式在领域驱动设计中的重要性
查看>>
国内首例:飞步无人卡车携手中国邮政、德邦投入日常运营
查看>>
微软将停止对 IE 8、9和10的支持
查看>>
微服务架构会和分布式单体架构高度重合吗
查看>>
如何测试ASP.NET Core Web API
查看>>
《The Age of Surge》作者访谈
查看>>
测试人员的GitHub
查看>>
Spring Web Services 3.0.4.RELEASE和2.4.3.RELEASE发布
查看>>
有关GitHub仓库分支的几个问题
查看>>
无服务器计算的黑暗面:程序移植没那么容易
查看>>
云原生的浪潮下,为什么运维人员适合学习Go语言?
查看>>
Webpack入门教程三十
查看>>
EAServer 6.1 .NET Client Support
查看>>
锐捷交换机密码恢复(1)
查看>>
Kali linux virtualbox rc=1908 错误解决办法
查看>>
linux软件包管理之三(源代码安装)
查看>>
数据库三范式是什么?
查看>>