P5146 最大差值

题目描述

HKE最近热衷于研究序列,有一次他发现了一个有趣的问题:

对于一个序列\(A_1,A_2\cdots A_n\)​,找出两个数\(i,j\),\(1\leq i<j\leq n\),使得\(A_j-A_i\)​最大。

现在给出这个序列,请找出\(A_j-A_i\)​的最大值。

输入格式

第一行为一个正整数\(n\)。

接下来\(n\)行整数,第\(k+1\)行的整数为\(A_k\)​。

输出格式

一行为\((A_j-A_i)\)的最大值

输入输出样例

输入 #1

10

1 3 4 6 7 9 10 1 2 9

输出 #1

9

说明/提示

对于30%的数据,\(n\leq1000\)

对于70%的数据,\(n\leq100000\)

对于100%的数据,\(2\leq n\leq1000000\),\(A_i\)​的值在int范围内

【思路】

贪心

【题目大意】

求这一串数字里面任意两个数差最大是多少

【题目分析】

因为是任意两个数

没有区间长度的限制

所以用不到单调队列

当前的数一定是在减去前面最小的那个数的情况最优

(包括自己)

这样只需要用一个变量

来记录到目前为止最小的数就好了

每一次的差都比较一下

最后输出差最大的值

【完整代码】

#include<iostream>
#include<cstdio> using namespace std;
const int Max = 1000006;
int a[Max];
int main()
{
int n;
cin >> n;
for(register int i = 1;i <= n;++ i)
cin >> a[i];
int M = a[1];
int ans = 0;
for(register int i = 1;i <= n;++ i)
{
M = min(M,a[i]);
ans = max(ans,a[i] - M);
}
cout << ans << endl;
return 0;
}

洛谷 P5146 最大差值 题解的更多相关文章

  1. 洛谷 P5146 最大差值

    题目传送门 好水的题... AC代码: #include<iostream> #include<cstdio> using namespace std; ,a,ans = -; ...

  2. 2019.06.17课件:[洛谷P1310]表达式的值 题解

    P1310 表达式的值 题目描述 给你一个带括号的布尔表达式,其中+表示或操作|,*表示与操作&,先算*再算+.但是待操作的数字(布尔值)不输入. 求能使最终整个式子的值为0的方案数. 题外话 ...

  3. 洛谷P1310 表达式的值 题解 栈/后缀表达式的应用

    题目链接:https://www.luogu.org/problem/P1310 本题涉及算法:栈.前缀表达式转后缀表达式,动态规划思想. 这道题目我思考了好长时间,第一时间让我做的话我也做不出来. ...

  4. 洛谷 P1351 联合权值 题解

    P1351 联合权值 题目描述 无向连通图 \(G\) 有 \(n\) 个点,\(n-1\) 条边.点从 \(1\) 到 \(n\) 依次编号,编号为 \(i\) 的点的权值为 \(W_i\)​,每条 ...

  5. 洛谷P1310 表达式的值——题解

    题目传送 题的难点:1.有运算优先级,不好判断.2.有破坏整体和谐性的讨厌的括号.3.不知道哪里要填数.4.要求方案数很大,搜索不会做呐. 发现难点1和2都是中缀表达式的缺点.转成后缀表达式后难点1. ...

  6. 洛谷P1981 表达式求值 题解 栈/中缀转后缀

    题目链接:https://www.luogu.org/problem/P1981 这道题目就是一道简化的中缀转后缀,因为这里比较简单,只有加号(+)和乘号(*),所以我们只需要开一个存放数值的栈就可以 ...

  7. 洛谷P4047 [JSOI2010]部落划分题解

    洛谷P4047 [JSOI2010]部落划分题解 题目描述 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人们总是拉帮结派形成属于自己的部落,不同的部落 ...

  8. 洛谷P1783 海滩防御 分析+题解代码

    洛谷P1783 海滩防御 分析+题解代码 题目描述: WLP同学最近迷上了一款网络联机对战游戏(终于知道为毛JOHNKRAM每天刷洛谷效率那么低了),但是他却为了这个游戏很苦恼,因为他在海边的造船厂和 ...

  9. 洛谷P1155 双栈排序题解(图论模型转换+二分图染色+栈)

    洛谷P1155 双栈排序题解(图论模型转换+二分图染色+栈) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1311990 原题地址:洛谷P1155 双栈排序 ...

随机推荐

  1. idea使用git进行项目管理

    第一部分: 安装 1. 下载地址:  https://git-scm.com/download/win; 如果速度慢, 使用 迅雷下载; 2. 点击安装, 然后下一步, 直到下面这个页面: 建议: 按 ...

  2. 【高并发解决方案】8、Nginx/LVS/HAProxy负载均衡软件的优缺点详解

    PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下. 一般对负载均衡的使用是随着网站规模的提升根据不 ...

  3. Web网站实现Google登录

    一.打开谷歌控制台:https://console.developers.google.com/apis 二.点击创建凭据,如下图,填写项目地址等 三.创建好客户端ID和秘钥后,填写对应的项目网址和登 ...

  4. react 实现评分组件

    写了个评分组件,效果如下 组件Rate.js import React, { Component } from 'react' import './Rate.less' export default ...

  5. C++ primer学习笔记_6_函数---函数定义、参数传递

    1. 习题参考: 6.14 举一个形参应该是引用类型的例子,再举一个形参不能是引用类型的例子. 答: 形参使用引用类型的情况:(1)避免拷贝传递大对象的时候,这里的string对象s:(2)当需要从函 ...

  6. 【Flask】 python学习第一章 - 6.0 WTF表单 数据库 蓝图

    WTF表单  wtf.py pip install flask-wtf  # 安装 from flask_wtf import FlaskForm from wtform import StringF ...

  7. Mariadb/MySQL多实例实战

    Mariadb/MySQL多实例实战 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装MySQL程序 无论你喜欢哪种方式安装均可,关于源码安装,yum安装或者二进制安装,可以 ...

  8. 关于base64编码Encode和Decode编码的几种方式

    关于base64编码Encode和Decode编码的几种方式 Base64是一种能将任意Binary资料用64种字元组合成字串的方法,而这个Binary资料和字串资料彼此之间是可以互相转换的,十分方便 ...

  9. linux下安装cryptography兼论查找合适pip的whl文件技巧

    cryptography这个包,如果源码安装,需要GCC之类的编译,在生产环境不太现实. 所以选择了whl文件安装. 但在官方提供的whl文件里,没有我们熟悉的cp36-cp36m这样的命名文件,肿么 ...

  10. bat echo 每行不同的颜色

    bat echo 每行不同的颜色 先看代码: @echo off SETLOCAL EnableDelayedExpansion for /F "tokens=1,2 delims=#&qu ...