UVALive – 4621 Cav 贪心 + 分析「建议收藏」

UVALive – 4621 Cav 贪心 + 分析

大家好,又见面了,我是全栈君。

题目大意:有一张洞穴地图,要在这个洞穴里面存放水,要求水不能碰到洞穴顶部。如今给出每一个位置的顶部位置和地面高度。问最多能够放多少水

解题思路:根据物理定理,每一段有水的连续区间,水位高度必须相等
所以我们能够求出在同一段连续区间內的水位高度,该水位高度等于最低洞穴顶部的高度。以此为根据,从左到右更新,再从右到左更新,就能够得到每一个位置的水位高度了

#include<cstdio>
#include<algorithm>
using namespace std;
const int N = 1000010;
const int INF = 0x3f3f3f3f;
int s[N], p[N], n;

void init() {
    scanf("%d", &n);
    for(int i = 0; i < n; i++) {
        scanf("%d", &p[i]);
    }

    for(int i = 0; i < n; i++) {
        scanf("%d", &s[i]);
    }
}

int solve() {
    int t = INF;
    for(int i = 0; i < n; i++) {
        t = min(t, s[i]);
        t = max(t, p[i]);

        s[i] = t;
    }

    t = INF;
    for(int i = n - 1; i >= 0; i--) {
        t = min(t, s[i]);
        t = max(t, p[i]);

        s[i] = t;
    }

    int ans = 0;
    for(int i = 0; i < n; i++)
        ans += s[i] - p[i];

    return ans;
}

int main() {
    int test;
    scanf("%d", &test);
    while(test--) {
        init();
        printf("%d\n", solve());
    }
    return 0;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116603.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • modelsim-win64-10.4-se 破解(win7实验成功)(其他操作系统也可参考,大同小异)

    modelsim-win64-10.4-se 破解(win7实验成功)(其他操作系统也可参考,大同小异)下载好的文件如下图,包括安装文件以及破解文件:1、运行modelsim-win64-10.4-se.exe,安装软件;     注意事项:安装路径可自行设置,但不要出现汉字。本例安装路径为:D:\modeltech64_10.4\win642、将解压的破解文件(MentorKG.exe和patch_dll.bat)复制到安装目录下的win64文件夹中。3、进入安装目录下的win64 文件夹…

    2022年5月10日
    114
  • bi报表工具有哪些_bi报表工具排名

    bi报表工具有哪些_bi报表工具排名  随着现在数据量井喷式的爆发以及企业对数据的重视程度逐渐提供,高灵活性、易使用、具有高度数据治理能力的自定义bi报表工具被越来越多的人青睐,逐渐取代传统报表工具成为企业内报表平台的首选。  接下来,我们了解一下好用的bi报表工具应该具备哪些功能特性以及能力呢。  一、数据标准化能力  上面我们讲到传统报表的一个突出劣势就是对数据的标准化处理能力欠缺,影响报表的最终使用效果。很多企业标准化能力不足,主要是由于报表是由很多指标组成,企业内基本指标是固定的,但是指标的组合方式却是纷…

    2022年10月25日
    0
  • python时间序列分析代码_时间序列分析VAR实验报告

    python时间序列分析代码_时间序列分析VAR实验报告题记:毕业一年多天天coding,好久没写paper了。在这动荡的日子里,也希望写点东西让自己静一静。恰好前段时间用python做了一点时间序列方面的东西,有一丁点心得体会想和大家分享下。在此也要特别

    2022年8月1日
    1
  • SQL中IS NOT NULL与!=NULL的区别

    SQL中IS NOT NULL与!=NULL的区别平时经常会遇到这两种写法:ISNOTNULL与!=NULL。也经常会遇到数据库有符合条件!=NULL的数据,但是返回为空集合。实际上,是由于对二者使用区别理解不透彻。默认情况下,推荐使用ISNOTNULL去做条件判断,因为SQL默认情况下对WHEREXX!=Null的判断会永远返回0行,却不会提示语法错误。这是为什么呢?SQLServer文档中对Null值的

    2022年6月9日
    63
  • PHP轻量级在线客服系统源码 自适应手机移动端「建议收藏」

    PHP轻量级在线客服系统源码 自适应手机移动端「建议收藏」简介:支持多商家支持多商家,每个注册用户为一个商家,每个商家可以添加多个客服。不限坐席每个商家可以无限添加坐席,不限制坐席数支持H5移动端系统自动适配移动端,也可以接入app(h5方式)支持微信公众号/微信小程序客服可以与微信公众号/小程序里的访客实时沟通常见问题自动回复支持设置常见问题,顾客可以点击常见问题系统会自动回复客服分组支持客服分组,例如售前客服,售后客服等,让专业的人员干专业的事情微信表情微信emoji表情全套支持发送图片、txt、zip、pdf、xls、doc…

    2022年7月19日
    21
  • 【微信公众平台开发】借用微信内置图片浏览功能

    【微信公众平台开发】借用微信内置图片浏览功能

    2021年11月24日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号