求助一道简单的dp(力扣P152)
  • 板块学术版
  • 楼主cabac
  • 当前回复45
  • 已保存回复45
  • 发布时间2020/6/2 19:26
  • 上次更新2023/11/7 01:16:34
查看原帖
求助一道简单的dp(力扣P152)
101911
cabac楼主2020/6/2 19:26

这是题面

#include<bits/stdc++.h>
using namespace std;
int n,ans=-2147483647;
long long a[100033],f[100033],g[100033];
long long maxm(int x,int y,int z){return x>=(y>=z?y:z)?x:(y>=z?y:z);}
long long minm(int x,int y,int z){return x<=(y<=z?y:z)?x:(y<=z?y:z);}
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;++i)
	scanf("%d",&a[i]);
	f[1]=a[1];g[1]=a[1];ans=a[1];
	for(int i=2;i<=n;++i)
	{
		f[i]=maxm(a[i],f[i-1]*a[i],g[i-1]*a[i]);
		g[i]=minm(a[i],f[i-1]*a[i],g[i-1]*a[i]);
		ans=ans>=f[i]?ans:f[i];
	}
	printf("%d",ans);
	return 0;
}

这是代码

为什么爆0了啊

2020/6/2 19:26
加载中...