Best Time to Buy and Sell Stock

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

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

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

Example 1
Inputprices = [7,1,5,3,6,4]
Output5
Buy on day 2 at price 1 and sell on day 5 at price 6, giving a profit of 5; buying after selling is not allowed.
Example 2
Inputprices = [7,6,4,3,1]
Output0
No profitable transaction is possible, so the maximum profit is 0.

Constraints

  • 1 <= prices.length <= 10^5
  • 0 <= prices[i] <= 10^4

Asked at 90 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate