3 条题解
-
019230323汪文韬 (小白) LV 8 @ 2023-10-29 17:13:52
#include <stdio.h>
int main() {
int n;
scanf("%d", &n); // 输入nint prices[n];
for (int i = 0; i < n; i++) {
scanf("%d", &prices[i]); // 输入股票价格
}int minPrice = prices[0];
int maxProfit = prices[1]-prices[0];for (int i = 1; i < n; i++) {
if (prices[i] - minPrice > maxProfit) {
maxProfit = prices[i] - minPrice;
}
if (prices[i] < minPrice) {
minPrice = prices[i];
}
}printf("%d\n", maxProfit);
return 0;
} -
02022-03-10 11:52:24@
#include "stdio.h"
#define N 100000int main(int argc, char* argv[])
{
int n;
scanf("%d", &n);
int a[N];
int x,max,cnt=0;
for(int i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
max=a[1]-a[0];
for(int j=0; j<n; j++)
{
for(int k=j+1; k<n; k++)
{
if(a[k]-a[j]>max)
max=a[k]-a[j];
}
}
printf("%d\n", max);
return 0;
} -
-12021-03-16 21:22:02@
#include<iostream> using namespace std; int fulc(int a[],int n); int main() { int n; cin>>n; int a[n]; for(int i=0;i<n;i++) cin>>a[i]; cout<<fulc(a,n); return 0; } int fulc(int a[],int n) { int max[n]; max[n-1]=a[n-1]; for(int i=n-2;i>=0;i--) { if(a[i]<max[i+1]) max[i]=max[i+1]; else max[i]=a[i]; } int maxprofit=0; for(int ibuy=0;ibuy<n-1;ibuy++) { int profit=max[ibuy+1]-a[ibuy]; if(profit>maxprofit) maxprofit=profit; } if(maxprofit!=0) return maxprofit; for(int i=1;i<n-1;i++) if(a[i]==a[i-1]||a[i]==a[i+1]) return 0; int minprofit=max[1]-a[0]; for(int ibuy=1;ibuy<n-1;ibuy++) { int profit=max[ibuy+1]-a[ibuy]; if(profit>=0) continue; if(profit>minprofit) minprofit=profit; } return minprofit; }
- 1
信息
- 难度
- 2
- 分类
- (无)
- 标签
- 递交数
- 904
- 已通过
- 212
- 通过率
- 23%
- 被复制
- 7
- 上传者