股票买卖(c++题解)

题目描述

给定一个长度为 N 的数组,数组中的第 i 个数字表示一个给定股票在第 i 天的价格。

如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。

注意你不能在买入股票前卖出股票。

输入格式

第一行包含整数 N,表示数组长度。

第二行包含 N 个不大于 的正整数,表示完整的数组。

输出格式

输出一个整数,表示最大利润。

样例

样例输入 1

复制代码
复制6
7 1 5 3 6 4

样例输出 1

复制代码
复制5

样例解释 1

样例1:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 = 6, 因为你不能在买入股票前卖出股票。

样例输入 2

复制代码
复制5
7 6 4 3 1

样例输出 2

复制代码
复制0

样例解释 2

样例2:在这种情况下, 不进行任何交易, 所以最大利润为 0


日常发作业题解。

也是简单爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆爆表的题

写作不易,点个赞呗!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int a[1000005],n,m,x=10000000; 
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		x=min(x,a[i]);
		m=max(m,a[i]-x);
	}
	cout<<m;
}
相关推荐
RainbowC01 分钟前
GapBuffer高效标记管理算法
android·算法
liu****1 分钟前
10.queue的模拟实现
开发语言·数据结构·c++·算法
宋恩淇要努力3 分钟前
C++多态
c++
mit6.8245 分钟前
10.17 枚举中间|图论
算法
shinelord明18 分钟前
【大数据技术实战】Kafka 认证机制全解析
大数据·数据结构·分布式·架构·kafka
让我们一起加油好吗36 分钟前
【基础算法】01BFS
数据结构·c++·算法·bfs·01bfs
孤狼灬笑41 分钟前
机器学习十大经典算法解析与对比
人工智能·算法·机器学习
草莓工作室1 小时前
数据结构3:线性表2-顺序存储的线性表
数据结构·windows
_w_z_j_1 小时前
C++11----列表初始化和initializer_list
开发语言·c++
1白天的黑夜12 小时前
递归-24.两两交换链表中的节点-力扣(LeetCode)
数据结构·c++·leetcode·链表·递归