集训第四周(高效算法设计)M题 (扫描法)
2024-09-02 06:06:42
原题:UVA11078
题意:给你一个数组,设a[],求一个m=a[i]-a[j],m越大越好,而且i必须小于j
怎么求?排序?要求i小于j呢。枚举?只能说超时无上限。所以遍历一遍数组,设第一个被减数为a【0】,之后遇到比a【0】大的数就更新它,再拿这个被减数去减数组中的每一个元素,同时也要不断地更新这个m值。
#include"iostream"
#include"set"
#include"cstring"
#include"cstdio"
#include"algorithm"
using namespace std;
const int maxn=100000+10;
int a[maxn];
int main()
{
int T;
cin>>T;
while(T--)
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
int x=a[0];
int ans=-1;
for(int i=1;i<n;i++)
{
ans=max(x-a[i],ans);
x=max(a[i],x);
}
cout<<ans<<endl;
}
return 0;
}
最新文章
- node fs lstat 如何区别文件和文件夹
- .NET中的DES对称加密
- java编译期优化
- Android学习 之 ColorStateList按钮文字变色
- 作业调度Quartz.NET
- 浮点数转换为人名币读法字符串(JAVA)
- MySQL 5.7 深度解析: JSON数据类型使用
- ITaCS Change Password web part
- SVN服务器从Windows迁移到Linux
- i = i++ 在java字节码层面的分析
- 【Android进阶】Activity的四种加载模式
- C#面向对象复习概要
- API HOOK和PE文件的关系
- php Excel文件导入 Spreadsheet_Excel_Reader
- 【麦克风阵列增强】Delay and sum beamforming
- [CF161D]Distance in Tree-树状dp
- Java设计模式学习记录-责任链模式
- GitHub 代码上传
- Python中的分组函数(groupby、itertools)
- Redis 的安装与使用(单节点)
热门文章
- 执行linux脚本出现问题
- A Simple Task CodeForces - 11D
- Linux oraenv Tips
- redis的安装使用以及一些常用的命令
- js 验证码倒计时效果
- iOS---UICollectionView详解和常用API翻译
- 翻译:高级t - sql第1级的阶梯:使用交叉连接来引入高级t - sql
- template or render function not defined.
- js 删除数组中某一项的几种方法总结
- apt-get update 报错 W: Unknown Multi-Arch type &#39;no&#39; for package &#39;compiz-core&#39;