Stock Zeitmaschine
Sie haben Zugriff auf einen Datensatz, tomorrowStocks
der die Aktienkurse Ihres Lieblingsgeschäfts an der NASDAQ enthält. Dieser Datensatz ist ein Container, der nach Minuten nach dem Öffnen indiziert wird. Jeder Index enthält den Preis der Aktie zu diesem Zeitpunkt.
// Assume the stock market opens at 9:30AM EDT
// tomorrowStocks[] contains the prices of your target stock.
// If the stock is $22 @ 10:30AM EDT
tomorrowStocks[60] == 22
Ausgabe
Ihre Aufgabe ist es, das bestmögliche Ergebnis zu bestimmen , 1 purchase
und 1 sale
der 1 stock
aus dem gegebenen Datensatz.
Fallstricke
- Sie müssen genau 1 Aktie kaufen und verkaufen.
- Sie können möglicherweise nicht im selben Zeitfenster kaufen und verkaufen.
- Sie müssen kaufen, bevor Sie verkaufen.
Testdaten
[1,2,3,4,5] # 4
[1,99,2,105] # 104
[99,1,99,100] # 99
[99,1,1,2,1,3] # 2
[5,4,3,3,1] # 0
[5,4,3,1] # -1
[5,2,1] # -1
[5,4,1] # -1
[55,45,20,1] # -10
[5,1] # -4
[10,7,5,1] # -2
[7] # Invalid input -- assume size >= 2
Dies ist ein Code-Golf ; Senden Sie die kürzeste Antwort in Ihrer Lieblingssprache!
[5,4,3,1]
Sie entweder dafür 5
und dafür verkaufen 4
oder dafür kaufen 4
und verkaufen 3
, um das optimale Ergebnis zu erzielen -1
.