题:

总时间限制: 1000ms       内存限制:65536kB
描写叙述

凹凸不平的地面每当下雨的时候总会积水。如果地面是一维的。每一块宽度都为1,高度是非负整数。那么能够用一个数组来表达一块地面。

比如[0,1,0,2,1,0,1,3,2,1,2,1]能够用来表示下图地面:

当下过雨后,地面就会积水,上图中蓝色的区域就是积水区域。如今给你一个数组表示地面,求下过雨后这块地面有多少积水量(如果不蒸发、不渗透)。

输入
第一行是一个整数m。表示有m组试例子,不超过100。

接下来m块。每块第一行是一个正整数n。表示地面总宽度(数组长度)。不超过20000。

接下来一行是n个整数。用空格隔开,表示地面高度。

输出
对于每组输入,输出一个整数表示积水量。

例子输入:

例子输出:
6
2

解:

#include<iostream>
using namespace std;
int main()
{
int m,n,i,j,c,b,z,l,x=0;
int a[20000];
h:
cout<<"请输入样式组数m(m<=100)"<<endl;
cin>>m;
if(m<0||m>100)
{
cout<<"输入错误。请又一次输入"<<endl;
goto h;
}
for(i=0;i<m;i++)
{
e:
cout<<"请输入数组长度n(n<=20000)"<<endl;
cin>>n;
if(n>20000||n<0)
{
cout<<"输入错误,请又一次输入"<<endl;
goto e;
} for(j=0;j<n;j++) {
cin>>a[j];
}
b=0;
j=0;
w:
b=j;
for(j=b+1;j<n;j++)
{
for(z=b;z>=0;z--)
{
if(a[z]>a[j])
{
for(c=j+1;c<n;c++)
{
if(a[c]>a[j])
{
if(a[c]>a[z])
{
l=a[z];
}
else
{
l=a[c];
}
x=x+(l-a[j]); goto w;
}
}
}
}
}
cout<<"积水量为"<<x<<endl;
} return 0;
}

推荐文章:那些年。做的几个应用

OpenJudge百炼习题解答(C++)--题4074:积水量的更多相关文章

  1. OpenJudge百炼习题解答(C++)--题4010:2011

    题: 总时间限制:  1000ms  内存限制:  65536kB 描写叙述 已知长度最大为200位的正整数n.请求出2011^n的后四位. 输入 第一行为一个正整数k,代表有k组数据,k<=2 ...

  2. OpenJudge百炼习题解答(C++)--题3142:球弹跳高度的计算

    题: 总时间限制:  1000ms  内存限制:  65536kB 描写叙述 一球从某一高度落下(整数,单位米),每次落地后反跳回原来高度的一半.再落下. 编程计算气球在第10次落地时,共经过多少米? ...

  3. OpenJudge百炼习题解答(C++)--题2704:竞赛评分

    题: 总时间限制:  1000ms  内存限制:  65536kB 描写叙述 现举行一次小竞赛,參赛的3支队伍,编号为1,2,3.每支队列轮流回答问题,假设回答正确,加10分;回答错误,扣10分;放弃 ...

  4. DirectX 11游戏编程学习笔记之8: 第6章Drawing in Direct3D(在Direct3D中绘制)(习题解答)

            本文由哈利_蜘蛛侠原创,转载请注明出处.有问题欢迎联系2024958085@qq.com         注:我给的电子版是700多页,而实体书是800多页,所以我在提到相关概念的时候 ...

  5. 機器學習基石(Machine Learning Foundations) 机器学习基石 作业三 课后习题解答

    今天和大家分享coursera-NTU-機器學習基石(Machine Learning Foundations)-作业三的习题解答.笔者在做这些题目时遇到非常多困难,当我在网上寻找答案时却找不到,而林 ...

  6. Coursera公开课Functional Programming Principles in Scala习题解答:Week 2

    引言 OK.时间非常快又过去了一周.第一周有五一假期所以感觉时间绰绰有余,这周中间没有假期仅仅能靠晚上加周末的时间来消化,事实上还是有点紧张呢! 后来发现每堂课的视频还有相应的课件(Slide).字幕 ...

  7. 《C++编程思想》第四章 初始化与清除(原书代码+习题+解答)

    相关代码: 1. #include <stdio.h> class tree { int height; public: tree(int initialHeight); ~tree(); ...

  8. (搬运)《算法导论》习题解答 Chapter 22.1-1(入度和出度)

    (搬运)<算法导论>习题解答 Chapter 22.1-1(入度和出度) 思路:遍历邻接列表即可; 伪代码: for u 属于 Vertex for v属于 Adj[u] outdegre ...

  9. 《Programming Massively Parallel Processors》Chapter5 习题解答

    自己做的部分习题解答,因为时间关系,有些马虎,也不全面,欢迎探讨或指出错误 5.1 Consider the matrixaddition in Exercise 3.1. Can one use s ...

随机推荐

  1. Adaptive Query Optimization in Oracle Database 12c (12.1 and 12.2)

    https://oracle-base.com/articles/12c/adaptive-query-optimization-12cr1

  2. js模板引擎-art-template常用

    art-template javascript 模板引擎 分为原生语法和简洁语法,本文主要是讲简洁语法 基础数据渲染 输出HTML 流程控制 遍历 调用自定义函数方法 子模板引入 基础数据渲染 一.引 ...

  3. 通过dbf文件恢复oracle

    可能有些人会由于各种原因经常重装系统,但是系统里面总是有一些比较重要的软件在重装后就不能用了.比如oracle数据库,众所周知数据库如果通过dmp导入导出麻烦不说,还很耗时,特别是像笔者一个数据库就有 ...

  4. Java RSA加密算法生成公钥和私钥

    原文:http://jingyan.baidu.com/article/6dad5075f33466a123e36ecb.html?qq-pf-to=pcqq.c2c 目前为止,RSA是应用最多的公钥 ...

  5. TStringList的DelimitedText的空格问题

    TStringList的DelimitedText的空格问题 如果DelimitedText的字符串中有空格,TStringList遇到空格会进行自动换行,而这显然不是我们想要的结果.经测试发现D7~ ...

  6. PTCSolution 关注

      2013.12.28更新: 经过几次整理和再次租赁下线,点击数明显增加,现在995下线点击数3413.再将2页半的点击数低的下线替换掉,AVG肯定超过4. 这么短的时间整理效果如此明显是我没有想到 ...

  7. nyoj42一笔画问题(欧拉图)

    这题事实上说不上难度4.仅仅是一个简单的欧拉图推断,给一些点,首先推断连通性.假设不连通.就谈不上是欧拉图. 假设是连通的,在推断度的数目,每一个顶点都是偶数个或者仅仅有两个是奇数个.这样就能够构成欧 ...

  8. stylus使用文档总结:内置方法+参数+条件+迭代+导入+继承

    一.内置方法 返回各种颜色的比重(如red(color)等) 颜色函数是CSS预处里器中内置的颜色函数功能,这些功能可以对颜色值进行处理,例如颜色的变亮.变暗.渐变颜色等处理十分的方便. lighte ...

  9. JavaScript 中的不可变对象(Immutable Objects)

    默认情况下,JavaScript 中的对象是可变的.我们可以更改原始值(字符串,数字等)和对象.我们来看看这个对象: let obj = { num: , obj: { content: " ...

  10. app store 注册账号生成证书上传app完整的教程

    app store为开发者提供四种类型的申请: 个人ios开发者计划$99/年 公司ios开发者计划$99/年 企业ios开发者计划$299/年 高校ios开发者计划免费 在这里主要介绍一下公司ios ...