假设某人要乘坐电梯,从楼层 到楼层 ,若电梯停靠位置 在 之间,则电梯移动距离为。
若停靠位置在 ,则电梯要多移动 2 距离。若停靠位置在 ,则电梯要多移动 4 距离。我们可
以发现,停靠位置从 到 1,电梯多移动的距离呈公差为 2 的等差数列。
我们假设 表示电梯停靠在 的总移动距离,那么给定 的时候,相当于将整个数组全部加
,并且将 到 1 的位置额外加一个公差为 2 的等差数列;同理,将 到 的位置加一个公差为 2 的等差数列

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n, m, a, b;
    long long ans = 1e18, pos, sum = 0;
    cin >> n >> m;
    vector<long long>pre(n+2), suf(n+2), pre1(n+2), suf1(n+2);
    while(m--){
        cin >> a >> b;
        pre[a-1] += 2;
        suf[b+1] += 2;
        sum += (b - a) * 2;
    }
    for(int i = n; i >= 1; i--){
        pre[i] += pre[i+1];
        pre1[i] = pre1[i+1] + pre[i];
    }
    for(int i = 1; i <= n; i++){
        suf[i] += suf[i-1];
        suf1[i] += suf1[i-1] + suf[i];
        if(suf1[i] + pre1[i] < ans){
            pos = i;
            ans = suf1[i] + pre1[i];
        }
    }
    cout << pos << " " << ans + sum << endl;
}

电梯停靠问题CPP实现相关推荐

  1. 电梯停靠问题---------------给你出道题

    有一天,在电梯里,很多人,大家纷纷按了自己想去的楼层 因为电梯一个劲地停,我就想去4楼的能不能在3楼就下,这样在4楼就能少停一次,他们可以走楼梯,牺牲一点个人利益换取集体利益最大化 我想,每个人在电梯 ...

  2. 电梯控制算法(8)多电梯场景——双电梯的空闲停靠

    电梯控制算法 https://blog.csdn.net/nameofcsdn/article/details/106874615 如果,两个电梯是等价的,那么,2个电梯的空闲停靠楼层是多少呢? 假设 ...

  3. 1.8 小飞的电梯调度算法

    题目:有一栋楼,如今设计一种电梯调度算法:电梯在一楼让大家上电梯,然后依据大家选择要到的楼层算出某一楼层i,电梯在i层停下让全部人下电梯,然后大家爬楼梯达到自己的楼层.请问电梯停在哪一层.能够使得这一 ...

  4. 面试官问我怎么设计100层大楼的电梯按键,我......

    PMCAFF(www.pmcaff.com):互联网产品社区,是百度,腾讯,阿里等产品经理的学习交流平台.定期出品深度产品观察,互联产品研究首选. 外包大师(www.waibaodashi.com): ...

  5. 第二单元作业——电梯模拟总结

    一.设计策略 1. 单部先来先服务电梯 第一次作业采用了最基本的生产者-消费者模型,电梯请求是模型中的商品,将控制器作为存储请求的仓库,主线程作为生产者向仓库存放请求,电梯作为消费者从仓库取出请求并处 ...

  6. 现代软件工程系列 结对编程 (II) 电梯调度程序新需求

    原来布置的作业在这里: http://www.cnblogs.com/xinz/archive/2010/11/28/1890300.html 正如在现实生活中一样, 软件项目的需求也会经常发生变化. ...

  7. 教学楼电梯调度需求分析

    1.引言 1.1 编写的目的 分析学校教学楼电梯调度在高峰或低谷时期运行是否快捷方便,以及安全性等问题,为后续开发电梯调度解决方案,系统设计与维护做好准备. 1.2 背景说明 学校教学楼楼层有18层, ...

  8. 测试面试题集-3.生活物品测试:行李箱、电梯、洗衣机

    ------·今天距2020年52天·------ 这是ITester软件测试小栈第76次推文 Q: 如何测试一个行李箱? A: 功能测试: 1.行李箱大小.厚度.容量.各个面(包括拉杆面.脚轮面)承 ...

  9. 功能测试之电梯的测试用例【杭州多测师】【杭州多测师_王sir】

    界面测试: 外观(里面.外面)美观性 电梯空间尺寸是否和设计尺寸一致 按钮是否清晰和易懂 显示楼层的显示屏是否安装 是否联系外界的电话.紧急电话 设备检测说明书 安全规范说明书 灯 标识的承重和人数 ...

最新文章

  1. 计算机在生命科学中的发展前景,往生命科学领域发展的职业前景
  2. Java nginx 双向ssl_使用Nginx实现HTTPS双向验证的方法
  3. Git 实用操作 | 撤销 Commit 提交
  4. 使用use index优化sql查询
  5. javascript option 菜单图标_善用 CSS,不用 JavaScript 也能写出这些元素
  6. 我的前端面试日记(一)
  7. U-Time巡回完美收官 演讲嘉宾干货分享:数据篇
  8. 如何让普通人了解网络隐私的重要性
  9. 三班倒有害健康,建议六班倒
  10. php 查看linux硬盘序列号,LINUX获取硬盘序列号
  11. 计算几何(一) by 邓俊辉老师
  12. 小呆聚合支付系统是个人二维码免签约即时到账多商户支付系统v1.7文字教程
  13. [苹果开发者账号]06 转让开发者账号后,开发者年费自动续费问题
  14. 哪个品牌的触控笔质量好?ipad好用的触控笔
  15. iPhone SE2外观酷似iPhone 8,香吗?
  16. 华为nova7se乐活版支持鸿蒙,华为nova7se乐活版和nova8se的详细对比参数对比
  17. Python爬虫实践-网易云音乐
  18. html2canvas实现一键截图
  19. Python Flask教程学习01
  20. 江苏省基础云计算机服务平台,江苏省一师一优课一课一名师登录入口

热门文章

  1. W ndows10如何清理使用痕迹,Win10 C盘突然爆满,怎么清理?史上较全的C盘清理方案,推荐收藏...
  2. 邮件安全引发的事件引人深思
  3. 类加载机制:双亲委任模型和tomcat类加载器
  4. 常用的微服务框架有哪些
  5. Unity打包 iOS屏幕镜像失败的解决方法
  6. linux文件权限转移,Linux文件权限中保存了( )信息。
  7. 如何给pdf文件添加书签
  8. catia文件打开方式修复
  9. 南航直减APP自动出票成功率95%以上
  10. C++挖掘程序本质(第三章C++其他语法-终)李明杰-M了个J 配套教材