开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道、一辆停在轨道底部的电梯、和电梯内一杆控制电梯升降的巨大手柄。
Nescafe之塔一共有N层,升降梯在每层都有一个停靠点。手柄有M个控制槽,第i个控制槽旁边标着一个数Ci,满足C1<C2<C3<……<CM。如果Ci>0,表示手柄扳动到该槽时,电梯将上升Ci层;如果Ci<0,表示手柄扳动到该槽时,电梯将下降-Ci层;并且一定存在一个Ci=0,手柄最初就位于此槽中。注意升降梯只能在1~N层间移动,因此扳动到使升降梯移动到1层以下、N层以上的控制槽是不允许的。
电梯每移动一层,需要花费2秒钟时间,而手柄从一个控制槽扳到相邻的槽,需要花费1秒钟时间。探险队员现在在1层,并且想尽快到达N层,他们想知道从1层到N层至少需要多长时间?

输入格式

第一行两个正整数N、M。
第二行M个整数C1、C2……CM。

输出格式

输出一个整数表示答案,即至少需要多长时间。若不可能到达输出-1。

测试样例1

输入

6 3
-1 0 2

输出

19

备注

手柄从第二个槽扳到第三个槽(0扳到2),用时1秒,电梯上升到3层,用时4秒。
手柄在第三个槽不动,电梯再上升到5层,用时4秒。
手柄扳动到第一个槽(2扳到-1),用时2秒,电梯下降到4层,用时2秒。
手柄扳动到第三个槽(-1扳倒2),用时2秒,电梯上升到6层,用时4秒。
总用时为(1+4)+4+(2+2)+(2+4)=19秒。

对于30% 的数据,满足1≤N≤10,2<=M<=5。
对于 100% 的数据,满足1≤N≤1000,2<=M<=20,-N<C1<C2<……<CM<N。

转载于:https://www.cnblogs.com/hyfer/p/5853396.html

tyvj2032 升降梯上相关推荐

  1. TYVJ2032 「Poetize9」升降梯上

    P2032 「Poetize9」升降梯上 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道, ...

  2. BSOJ3806 TYVJ 2032 升降梯上

    3806 -- [模拟试题]升降梯上 Description 开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道.一辆停在轨道底部的电梯.和电梯内一杆控 ...

  3. 《算法竞赛指南》0x6B 升降梯上

    升降梯上 大意 n层塔,m个按钮,每次拉拉杆上下电梯,拉拉杆需1s,上下一层需2s,求最小的上升到顶层的时间 思路 虽然看起来不像,但我们可以用最短路中的分层图来思考,遍历每个点以及每个拉杆所上下的楼 ...

  4. 「Poetize9」升降梯上(tyvj2032)(最短路)

    开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道.一辆停在轨道底部的电梯.和电梯内一杆控制电梯升降的巨大手柄. Nescafe之塔一共有N层,升降梯在 ...

  5. 【最短路算法例题-升降梯上】-C++

    描述 启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道.一辆停在轨道底部的电梯.和电梯内一杆控制电梯升降的巨大手柄. Nescafe之塔一共有N层,升降 ...

  6. 《算法竞赛进阶指南》0x6B T2 升降梯上

    题目传送门 题目描述 开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道.一辆停在轨道底部的电梯.和电梯内一杆控制电梯升降的巨大手柄. Nescafé ...

  7. 【图论】C_算竞_升降梯上(二维抽象一维)

    一.题目描述 开启了升降梯的动力之后,探险队员们进入了升降梯运行的那条竖直的隧道,映入眼帘的是一条直通塔顶的轨道.一辆停在轨道底部的电梯.和电梯内一杆控制电梯升降的巨大手柄. Nescafé 之塔一共 ...

  8. TYVJ P2032 「Poetize9」升降梯上 spfa最短路

    %%%暴搜出奇迹%%%@SiriusRen 其实我刚开始题读错了,才导致我写图论... spfa跑最短路,开一个node记录状态(pair当然滋磁):所在楼层和槽的位置 以层数为1,槽在0的位置 为初 ...

  9. 欺骗的艺术——第二部分(9)

    第十章 进入内部(1) 为什么一个外部人员伪装成一个公司员工会这样容易?为什么他们的扮演会如此有说服力甚 至有高度安全意识的人都会受骗?为什么欺骗十分了解安全程序(怀疑不是他们亲自认识的 人并保护他们 ...

最新文章

  1. linux 内核日志等级,Linux系统中日志级别详情
  2. 【转】第01课:生活中的监听模式——一坑爹的热水器
  3. Mysql1 晨考题
  4. SqlServer时间戳与普通格式的转换
  5. java 504错误怎么解决_求助java.lang.NoClassDefFoundError怎么解决,报错信息如下
  6. vSAN其实很简单-运维工程师眼里的vSAN
  7. (转)修改的T4代码生成器(续)
  8. BlockingQueue - LinkedBlockingQueue常用API
  9. hive数据去重测试
  10. 计算机基础知识复习(一)
  11. 谷歌电子市场开发流程(3)-关于加载界面的处理
  12. 单元测试——junit4入门例子
  13. Origin修改安装位数
  14. 中小学教师计算机培训心得,小学教师信息技术培训心得体会2篇
  15. 微信时代的巨大冲击 QQ空间面临艰难转型
  16. 全国青少年软件编程等级考试介绍
  17. centos linux系统后门程序
  18. lidar_align 标定lidar和imu 在“Performing Global Optimization”步骤终止的问题
  19. Java 学习 if循环 使用Scanner收集你的身高体重,并计算出你的BMI值是多少BMI的计算公式是 体重(kg) / (身高*身高)
  20. 上海海洋大学计算机专业是几本,上海海洋大学是几本 录取分数线一般在多少...

热门文章

  1. 阿拉伯数字转换中文表示
  2. v-show使用三元运算符
  3. 鬼影病毒的正确处理方法
  4. 圣诞节暖心邮件 贺卡 礼物都给你准备好了 外贸人请查收
  5. Unreal Engine 4 问题:使用asio后编译打包报错:unresolved external symbol
  6. 设计一个文件系统,需要考虑哪些因素?
  7. 攻防世界 -- very_easy_sql
  8. [我所知道的BIOS]-[Chipset Config] 5
  9. EAS7.5服务器文件夹备份,EAS账套备份恢复指导手册
  10. 视频教程-【三月】微信小程序云开发项目实战课程 - T3租机械-微信开发