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 2656ded38f | 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 n-times
Goal
Given is the price-development of an arbitrary stock.
Suppose you have perfect knowledge and are able to buy and sell the stock multiple times. Write an algorithm that outputs the maximum profit that can be made by exactly n sales.
- 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
- Each buy must be made on another date after the previous sale
Input
A blank-separated array of numbers.
The first number is the number of sales allowed.
All following numbers are stock-prices.
Each position symbolises the stock-price of a given day.
Output
The maximum profit that can be made within that period by n
sales.
Constraints
- 2 <=
n
<= 10 - 2 *
n
<=days with stock-prices
<= 50 - 1 <=
stock-price
<= 2,147,483,647
Example
Input:
3 12 11 13 9 12 8 14 13 15
where n
is 3
Output:
12