Pemrograman KompetitifMudah

Waktu minimum untuk menyelesaikan pekerjaan

Panduan terperinci dan implementasi Python untuk masalah 'Waktu minimum untuk menyelesaikan pekerjaan'.

Pernyataan Masalah

Mudah

Tulis fungsi min_time_jobs(jobs, k, t) yang menemukan waktu minimum untuk menyelesaikan semua pekerjaan. Array jobs mewakili waktu yang dibutuhkan untuk menyelesaikan setiap pekerjaan. Ada k penerima tugas, dan setiap penerima tugas membutuhkan t unit waktu untuk menyelesaikan 1 unit pekerjaan. Pekerjaan hanya dapat ditetapkan sebagai sub-segmen yang berdekatan kepada penerima tugas.

Kendala
  • 1 <= len(jobs) <= 10^5
  • 1 <= k <= len(jobs)
  • 1 <= t <= 1000
  • 1 <= jobs[i] <= 10^4

Contoh

Example 1
Input
min_time_jobs([10, 7, 8, 12, 8, 5, 9], 4, 5)
Output
100
Explanation

Optimal contiguous assignment: [10, 7], [8, 12], [8, 5], [9]. Max job units assigned is 20 (8+12). Time = 20 * 5 = 100.

Example 2
Input
min_time_jobs([4, 5, 10], 2, 1)
Output
10
Explanation

Optimal contiguous assignment: [4, 5], [10]. Max job units assigned is 10. Time = 10 * 1 = 10.

Need a Hint?
Pertimbangkan untuk menggunakan struktur data khusus Greedy 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.