Name: Anonymous 2010-08-28 17:19
How do you get an O(n) running time of a Maximum Consecutive Sub-sequence Product. I have a O(n^2) algorithm now, but I need a O(n) runtime.
ar is the array
ar is the array
k=ar.length;
pro=BigInteger.ONE;
max=BigInteger.valueOf(ar[0]);
for(i=0;i<k;i++)
{
pro=BigInteger.valueOf(ar[i]);
if(pro.compareTo(max)>0) {
max=pro;
}
for(j=i+1;j<k;j++)
{
pro=pro.multiply(BigInteger.valueOf(ar[j]));
if(pro.compareTo(max)>0)
max=pro;
}