Programmation compétitiveFacile

Opérations minimales pour rendre GCD multiple de k

Guide détaillé et implémentation de Python pour le problème « Opérations minimales pour rendre GCD multiple de k ».

Énoncé du problème

Facile

Écrivez une fonction min_operations_gcd_k(arr, k) qui renvoie le nombre minimum d'opérations pour faire du plus grand diviseur commun (PGCD) de tous les éléments du tableau un multiple de k. En une seule opération, vous pouvez incrémenter ou décrémenter n’importe quel élément du tableau de 1.

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

Exemples

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?
Pensez à utiliser des structures de données spécifiques à Greedy, comme des ensembles ou des tas.
Edge Cases to Watch
  • Structures d'entrée vides
  • Entrées à élément unique
  • Grandes limites numériques

Prêt à résoudre ?

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

Ouvrir dans l'éditeur
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

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.