这题说的给了 一 个 图,每次 按照他给的顺序 跳格子 给了 每种 格子之间的 转换 代价 求最后 转换代价

dp[i][j] 表示 左脚在i 右脚 在j 的最小代价 然后用滚动数组 ,就可以不断说的转化,然后固定一个 另一个变换

dp[n][i]  dp[i][n]

#include <iostream>
#include <algorithm>
#include <string.h>
#include <cstdio>
using namespace std;
typedef long long ll;
const ll maxv=1e18;
ll dp[][][];
void inti(int now){
for(int i=; i<; ++i)
for(int j=; j<; ++j)
dp[now][i][j]=maxv;
}
ll cal(int a, int b)
{
if( a== || b== ) return ;
if( a == b ) return ;
int t1 = a+ ;
if( t1 > ) t1=;
if( t1 == b ) return ;
t1 = a-;
if( t1 < ) t1=;
if( t1 == b ) return ;
return ;
}
int main()
{
int n;
while(scanf("%d",&n)==&&n){
int now=;
int late=;
inti();
dp[][][n]=;
dp[][n][]=;
int per=n;
while(true){
scanf("%d",&n);
if(n==) break;
per=n;
now=-now;
late=-late;
inti(now);
for(int i=; i<; ++i)
for(int j=; j<; ++j){
if(i==j||i==n)continue;
dp[now][n][i] = min(dp[late][j][i]+cal(j,n),dp[now][n][i]);
}
for(int i=; i<; ++i)
for(int j=; j<; ++j){
if(i==j||i==n) continue;
dp[now][i][n]=min( dp[now][i][n] , dp[late][i][j]+cal(j,n) );
}
}
ll ans=maxv;
for(int i=;i< ; ++i)
ans=min(ans, min( dp[now][per][i],dp[now][i][per]));
printf("%lld\n",ans);
} return ;
}

uva1291的更多相关文章

随机推荐

  1. python2.0_s12_day15_django框架的基本使用

    day15本节内容介绍 上节作业讲解(让行进入编辑模式,批量编辑) CSS之特殊内容补充 CSS内容补充之伪类 伪类实例:返回顶部终极版 CSS内容补充之无法被覆盖 jQuery插件 jQuery插件 ...

  2. Python查询数据库时候遇到的乱码问题

    今天在看Python连接数据库的内容,然后遇到了最常遇到的字符乱码的状况,这真的很烦人,由于我用的是3.6的版本,,默认的是utf-8,如果是3以下的版本,请在文件开头加一句代码 #encoding= ...

  3. On iPad, UIImagePickerController must be presented via UIPopoverController

    本文转载至:http://blog.csdn.net/k12104/article/details/8537695 On iPad, UIImagePickerController must be p ...

  4. Django学习笔记 创建应用

    django中使用应用来分割功能.比如:做一个游戏网站,包含4块不同的功能:游戏新闻.游戏论坛.Blog系统.在线商城.使得结构清晰了,每一个应用实现不同的功能:便于复用:游戏新闻.游戏论坛.Blog ...

  5. MYSQL系列之(一)

      mysql简介 1.什么是数据库 ? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不 ...

  6. UVa 568 - Just the Facts

    这道题和这几段牛代码让我见识了精简与高效.好好学习! http://blog.csdn.net/lyhvoyage/article/details/9307009

  7. WEB安全第三篇--控制请求的艺术:CSRF和SSRF

    零.前言 最近做专心web安全有一段时间了,但是目测后面的活会有些复杂,涉及到更多的中间件.底层安全.漏洞研究与安全建设等越来越复杂的东东,所以在这里想写一个系列关于web安全基础以及一些讨巧的pay ...

  8. go练习5--生成md5

    import "crypto/md5" import "encoding/hex" //go 生成 md5 func T4_1() { m := md5.New ...

  9. go练习4--json 序列号反序列化

    //定义结构体 //首字母大写 , json:"msg_id" 是 tag type Message struct { MsgId string `json:"msg_i ...

  10. mysql表大小写问题

    查看大小写区分 mysql> show variables like "%case%"; linux在mysql安装完后默认:区分表名的大小写,不区分列名的大小写 改变表名的 ...