CodeKata 16



質問する


priceは配列で、各要素は毎日の株価です.
一度だけ取引できるなら=売買できるなら、
最大の利益はいくらですか.
Input: [7,1,5,3,6,4]
Output: 5
説明:
2日間(価格=1)で買い、5日間(価格=6)で売り、6-1が最大の収益となります
7-1=6はだめだよね?先に買ってこそ売ることができる.
Input: [7,6,4,3,1]
Output: 0
説明:
ここは毎日値下げしているので、取引はありません.だから0

答案用紙


モデルの答え

const maxProfit = prices => {
    var min = Number.MAX_SAFE_INTEGER; 
    var max = 0;
    for (var i = 0; i < prices.length; i++) {
        min = Math.min(min, prices[i]);
        max = Math.max(max, prices[i] - min);
    }
    return max;
};

私の答え