forked from lothar.buchholz/buy-and-sell-twice
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Lothar Buchholz 2cb56d6ee4 | 5 years ago | |
---|---|---|
.idea | 5 years ago | |
doc | 5 years ago | |
gradle/wrapper | 5 years ago | |
src | 5 years ago | |
.gitignore | 5 years ago | |
README.md | 5 years ago | |
build.gradle | 5 years ago | |
gradlew | 5 years ago | |
gradlew.bat | 5 years ago | |
settings.gradle | 5 years ago |
README.md
Buy and Sell Twice
Goal
Given is the price-development of an arbitrary stock.
Suppose you have perfect knowledge and are able to buy and sell the stock twice. Write an algorithm that outputs the maximum profit that can be made.
- The price-development is given for an arbitrary number of days.
- A stock can only be sold on the next day.
- Stock-prices are given as integers
- The second buy must be made on another date after the first sale
Input
A blank-separated array of stock-prices.
Each position symbolises the stock-price of a given day.
Output
The maximum profit that can be made within that day.
Constraints
- 4 <=
days with stock-prices
<= 50 - 1 <=
stock-price
<= 2,147,483,647
Example
Input:
12 11 13 9 12 8 14 13 15
Output:
10