///

class Solution {

public int maxProfit(int[] prices) {

int profit1=0, profit2=0, max = 0;

for(int i=1; i<prices.length; i++){

profit1=Math.max(profit1+prices[i]-prices[i-1], profit2);

profit2 = max;

max = Math.max(profit1, max);

// System.out.println("i: " + i + " max: " + max + " profit1: " + profit1 + " profit2: " + profit2);

}

return max;

}

}

(1). profit1 is buy the previous day and sell

(2). profit 2 is doing nothing, and thus the max profit of yesterday

(3). Buy 1 sell 10 is the same as Buy 1 sell 2 and buy 2 sell 10.

[1,2,10]

(4). If you don't understand, printout the values with test case [1, 2, 10]

Your stdout

i: 1 max: 1 profit1: 1 profit2: 0

i: 2 max: 9 profit1: 9 profit2: 0

Your answer

9

*/