Wawancara 150 TeratasSedang

Meledak Balon

Panduan terperinci dan implementasi Python untuk masalah 'Burst Balloons'.

Pernyataan Masalah

Sedang

Anda diberikan n balon, diindeks dari 0 hingga n - 1. Setiap balon dicat dengan nomor di atasnya yang diwakili oleh nomor larik. Anda diminta untuk memecahkan semua balon.

Jika Anda memecahkan balon ke-i, Anda akan mendapatkan koin nums[i - 1] * nums[i] * nums[i + 1]. Jika i - 1 atau i + 1 keluar dari batas array, maka perlakukan seolah-olah ada balon dengan gambar 1 di atasnya.

Kembalikan koin maksimal yang bisa Anda kumpulkan dengan meledakkan balon secara bijak.

Tulis fungsi maxCoins(nums: List[int]) -> int.

Kendala
  • n == len(nums)
  • 1 <= n <= 300
  • 0 <= nums[i] <= 100

Contoh

Example 1
Input
nums = [3,1,5,8]
Output
167
Explanation

burst 1 -> burst 5 -> burst 3 -> burst 8. Coins: 3*1*5 + 3*5*8 + 1*3*8 + 1*8*1 = 167.

Example 2
Input
nums = [1,5]
Output
10
Explanation

burst 1 first: 1*5*1 = 5, then burst 5: 1*5*1 = 5. Total = 10.

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.