You are using an outdated browser. Please update your browser for a better user experience.

Stonks Time Machine


You have recently developed a machine that lets you travel through time. You decide that you want to use your time machine to make yourself a fortune by investing on the stock market. Despite all the effort you put into breaking the laws of physics, you can't be bothered to figure out what stock to buy yourself. Instead, you decide to create an algorithm to figure out what stock will give you the best returns. Even though time is now a meaningless mortal construct for you, the algorithm needs to be O(n) because there's a lot of data to parse.

You are given an array prices where prices[i] is the price of a given stock on the ith day.

You want to maximize your tendies by choosing a single day to buy one stonk and choosing a different day in the future to sell that stonk.

Return the maximum profit you can achieve from this transaction. If you cannot achieve any profit, return 0.

Example 1:

Input: prices = [7,1,5,3,6,4] Output: 5 Explanation: Buy on day 2 (price = 1) and sell on day 5 (price = 6), profit = 6-1 = 5. Note that buying on day 2 and selling on day 1 is not allowed because you must buy before you sell. Example 2:

Input: prices = [7,6,4,3,1] Output: 0 Explanation: In this case, no transactions are done and the max profit = 0.