题意: 找最大乘积序列。 因为里面有负数嘛,我就想可不可以根据负数的个数来做文章。。后来总是WA。。因为还和负数的值有关。。还是老老实实暴力吧
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
int p[
30];
int main()
{
int n,temp=
1;
while(
scanf(
"%d",&n)!=EOF){
memset(p,
0,
sizeof(p));
long long ans=
0;
for(
int i=
0;i<n;i++){
scanf(
"%d",&p[i]);}
for(
int i=
0;i<n;i++){
long long ans1=
1;
for(
int j=i;j<n;j++){
ans1*=p[j];
if(ans1>ans) ans=ans1;
}
}
printf(
"Case #%d: The maximum product is ",temp++);
cout<<ans;
printf(
".\n\n");
}
return 0;
}
转载请注明原文地址: https://ju.6miu.com/read-13994.html