Wawancara 150 TeratasSedang

Waktu Terbaik untuk Membeli dan Menjual Saham dengan Cooldown

Panduan lengkap dan implementasi Python untuk masalah 'Waktu Terbaik Membeli dan Menjual Saham dengan Cooldown'.

Pernyataan Masalah

Sedang

Anda diberikan array harga di mana harga[i] adalah harga saham tertentu pada hari ke-i.

Temukan keuntungan maksimal yang bisa Anda raih. Anda dapat menyelesaikan transaksi sebanyak yang Anda suka (yaitu, membeli satu dan menjual satu lembar saham beberapa kali) dengan batasan berikut:

- Setelah menjual saham, Anda tidak dapat membeli saham pada hari berikutnya (misalnya cooldown satu hari).

Catatan: Anda tidak boleh melakukan beberapa transaksi secara bersamaan (yaitu, Anda harus menjual saham sebelum membeli lagi).

Tulis fungsi maxProfit(prices: List[int]) -> int.

Kendala
  • 1 <= len(prices) <= 5000
  • 0 <= prices[i] <= 1000

Contoh

Example 1
Input
prices = [1,2,3,0,2]
Output
3
Explanation

Transactions = [buy, sell, cooldown, buy, sell].

Example 2
Input
prices = [1]
Output
0
Explanation

No transaction can be made.

Need a Hint?
Pertimbangkan untuk menggunakan struktur data khusus DP 2D seperti kumpulan atau tumpukan.
Edge Cases to Watch
  • Struktur masukan kosong
  • Masukan elemen tunggal
  • Batasan angka yang besar

Siap Memecahkannya?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Buka di Editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.