Pemrograman KompetitifMudah

Operasi minimum untuk membuat GCD kelipatan k

Panduan terperinci dan implementasi Python untuk masalah 'Operasi minimum untuk membuat kelipatan GCD dari k'.

Pernyataan Masalah

Mudah

Tulis fungsi min_operations_gcd_k(arr, k) yang mengembalikan jumlah operasi minimum untuk membuat Pembagi Persekutuan Terbesar (GCD) dari semua elemen dalam larik menjadi kelipatan k. Dalam satu operasi, Anda dapat menambah atau mengurangi elemen array sebanyak 1.

Kendala
  • 1 <= len(arr) <= 10^5
  • 1 <= k <= 10^4
  • 1 <= arr[i] <= 10^9

Contoh

Example 1
Input
min_operations_gcd_k([4, 5, 6], 5)
Output
2
Explanation

Increment 4 to 5 (1 op) and decrement 6 to 5 (1 op). The array becomes [5, 5, 5] whose GCD is 5, which is a multiple of 5.

Example 2
Input
min_operations_gcd_k([2, 3], 3)
Output
1
Explanation

Increment 2 to 3 (1 op). The array becomes [3, 3] whose GCD is 3, which is a multiple of 3.

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.