ref我好菜啊

#include <iostream>
#include <cstring>
#include <cstdio>
#include <cmath>
using namespace std;
int n, u[2005], v[2005], f[2005][11][11][11][11];
int dis(int x, int y){
return abs(x-y);
}
int dfs(int i, int cur, int a, int b, int c){
if(f[i][cur][a][b][c]!=-1) return f[i][cur][a][b][c];
int re = 0x3f3f3f3f;
if(i>n){
if(!a && !b && !c) return 0;
if(a) re = min(re, dfs(i, a, 0, b, c)+dis(cur,a)+1);
if(b) re = min(re, dfs(i, b, a, 0, c)+dis(cur,b)+1);
if(c) re = min(re, dfs(i, c, a, b, 0)+dis(cur,c)+1);
f[i][cur][a][b][c] = re;
return re;
}
if(a) re = min(re, dfs(i, a, 0, b, c)+dis(cur,a)+1);
if(b) re = min(re, dfs(i, b, a, 0, c)+dis(cur,b)+1);
if(c) re = min(re, dfs(i, c, a, b, 0)+dis(cur,c)+1);
if(a && b && c){
re = min(re, dfs(i+1, v[i], a, b, c)+dis(cur,u[i])+dis(u[i],v[i])+2);
re = min(re, dfs(i+1, a, v[i], b, c)+dis(cur,u[i])+dis(u[i],a)+2);
re = min(re, dfs(i+1, b, a, v[i], c)+dis(cur,u[i])+dis(u[i],b)+2);
re = min(re, dfs(i+1, c, a, b, v[i])+dis(cur,u[i])+dis(u[i],c)+2);
}
else{
if(!a) re = min(re, dfs(i+1, u[i], v[i], b, c)+dis(cur,u[i])+1);
else if(!b) re = min(re, dfs(i+1, u[i], a, v[i], c)+dis(cur,u[i])+1);
else re = min(re, dfs(i+1, u[i], a, b, v[i])+dis(cur,u[i])+1);
}
f[i][cur][a][b][c] = re;
return re;
}
int main(){
cin>>n;
for(int i=1; i<=n; i++)
scanf("%d %d", &u[i], &v[i]);
memset(f, -1, sizeof(f));
cout<<dfs(1, 1, 0, 0, 0)<<endl;
return 0;
}

cf984e Elevator的更多相关文章

  1. HDOJ 1008. Elevator 简单模拟水题

    Elevator Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  2. poj[2392]space elevator

    Description The cows are going to space! They plan to achieve orbit by building a sort of space elev ...

  3. Design Elevator

    From: https://discuss.leetcode.com/topic/89/write-elevator-program-using-event-driven-programming/9 ...

  4. PAT (Advanced Level) Practise:1008. Elevator

    [题目链接] The highest building in our city has only one elevator. A request list is made up with N posi ...

  5. Pair Project: Elevator Scheduler [电梯调度算法的实现和测试]

    作业提交时间:10月9日上课前. Design and implement an Elevator Scheduler to aim for both correctness and performa ...

  6. POJ2392Space Elevator(贪心+背包)

    Space Elevator Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9970   Accepted: 4738 De ...

  7. hdu 1008 Elevator

    Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description The hig ...

  8. 【ACM】HDU1008 Elevator 新手题前后不同的代码版本

    [前言] 很久没有纯粹的写写小代码,偶然想起要回炉再来,就去HDU随便选了个最基础的题,也不记得曾经AC过:最后吃惊的发现,思路完全不一样了,代码风格啥的也有不小的变化.希望是成长了一点点吧.后面定期 ...

  9. Elevator 分类: HDU 2015-06-19 21:52 13人阅读 评论(0) 收藏

    Elevator Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

随机推荐

  1. centos yum 安装mysql5.7 以及 默认root密码查看

    1.  首先更新rpm 从MySQL Yum仓库下载最新的rpm文件:http://dev.mysql.com/downloads/repo/yum/ (需要Oracle帐号以及填写一些使用信息,才能 ...

  2. kickstart2019 round_C B. Circuit Board

    思路: 这题应该不止一种解法,其中的一种可以看作是leetcode85https://www.cnblogs.com/wangyiming/p/11059176.html的加强版: 首先对于每一行,分 ...

  3. linux性能测试脚本

    http://linux-bench.com/ What is Linux-Bench? Linux-Bench is a simple script that provides a basic le ...

  4. SQL解读XML案例

    ALTER PROCEDURE [dbo].[GetProductList1] @Products XML AS BEGIN SET NOCOUNT ON DECLARE @Pointer INT D ...

  5. OpenSSL s_server / s_client 应用实例

    netkiller openssl tls 目录[-] 12.6. s_server / s_client 12.6.1. SSL POP3 / SMTP / IMAP 12.6.2. server ...

  6. 500 Days Of Summer

    <和莎莫的500天>,一部爱情片. Summer和Tom两人不同的爱情观走在了一起,或许真的就是爱情观不同,或许是Summer爱Tom爱的不够深,最终的结局是那么不尽人意. 有人愿意把秘密 ...

  7. 文件IO——将文件dfs的文件内容第三个字节之后的内容复制到文件dfd中

    /* 使用文件IO将文件fds中的内容复制到文件fdd中去 1.创建两个文件描述符 2.使用open()方法分别以只读只写方式将文件描述符符文件连接 3.将读位置后移三位 4.将fds内容存储到缓冲区 ...

  8. Redis基础数据结构

    Redis数据库中每个键值对都是由对象( c 的结构体对象)组成的. 数据库键总是一个字符串对象(string object) 数据库键的值可以使字符串对象.列表对象(list object).哈希对 ...

  9. 模块化Java简介

    什么是模块化?   模块化是个一般概念,这一概念也适用于软件开发,可以让软件按模块单独开发,各模块通常都用一个标准化的接口来进行通信.实际上,除了规模大小有区别外,面向对象语言中对象之间的关注点分离与 ...

  10. hdu-1198 Farm Irrigation---并查集+模拟(附测试数据)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1198 题目大意: 有如上图11种土地块,块中的绿色线条为土地块中修好的水渠,现在一片土地由上述的各种 ...