# Minimum elements to be added in a range so that count of elements is divisible by K

Given three integer K, L and R (range [L, R]), the task is to find the minimum number of elements the range must be extended by so that the count of elements in the range is divisible by K.

Examples:

Input: K = 3, L = 10, R = 10
Output: 2
Count of elements in L to R is 1.
So to make it divisible by 3 , increment it by 2.

Input: K = 5, L = 9, R = 12
Output: 1

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach:

• Count the total number of elements in the range and store it in a variable named count = R – L + 1.
• Now, minimum number of elements that need to be added to the range will be K – (count % K).

Below is the implementation of the above approach:

## C++

 `// C++ implementation of the approach ` `#include ` `using` `namespace` `std; ` ` `  `int` `minimumMoves(``int` `k, ``int` `l, ``int` `r) ` `{ ` `    ``// Total elements in the range ` `    ``int` `count = r - l + 1; ` ` `  `    ``// If total elements are already divisible by k ` `    ``if` `(count % k == 0) ` `        ``return` `0; ` ` `  `    ``// Value that must be added to count ` `    ``// in order to make it divisible by k ` `    ``return` `(k - (count % k)); ` `} ` ` `  `// Driver Program to test above function ` `int` `main() ` `{ ` `    ``int` `k = 3, l = 10, r = 10; ` `    ``cout << minimumMoves(k, l, r); ` ` `  `return` `0; ` `} `

## Java

 `// Java implementation of the approach ` ` `  `import` `java.io.*; ` ` `  `class` `GFG { ` `    `  ` ``static` `int` `minimumMoves(``int` `k, ``int` `l, ``int` `r) ` `{ ` `    ``// Total elements in the range ` `    ``int` `count = r - l + ``1``; ` ` `  `    ``// If total elements are already divisible by k ` `    ``if` `(count % k == ``0``) ` `        ``return` `0``; ` ` `  `    ``// Value that must be added to count ` `    ``// in order to make it divisible by k ` `    ``return` `(k - (count % k)); ` `} ` ` `  `// Driver Program to test above function ` `    ``public` `static` `void` `main (String[] args) { ` `    ``int` `k = ``3``, l = ``10``, r = ``10``; ` `    ``System.out.print(minimumMoves(k, l, r)); ` `    ``} ` `} ` `// This code is contributed  ` `// by inder_verma.. `

## Python3

 `# Python 3 implementation of the approach ` ` `  `def` `minimumMoves(k, l, r): ` `    ``# Total elements in the range ` `    ``count ``=` `r ``-` `l ``+` `1` ` `  `    ``# If total elements are already divisible by k ` `    ``if` `(count ``%` `k ``=``=` `0``): ` `        ``return` `0` ` `  `    ``# Value that must be added to count ` `    ``# in order to make it divisible by k ` `    ``return` `(k ``-` `(count ``%` `k)) ` ` `  `# Driver Program to test above function ` `if` `__name__ ``=``=` `'__main__'``: ` `    ``k ``=` `3` `    ``l ``=` `10` `    ``r ``=` `10` `    ``print``(minimumMoves(k, l, r)) ` ` `  `# This code is contributed by ` `# Surendra_Gangwar `

## C#

 `// C# implementation of the approach ` `using` `System; ` ` `  `class` `GFG { ` `     `  ` `  ` `  `static` `int` `minimumMoves(``int` `k, ``int` `l, ``int` `r) ` `{ ` `    ``// Total elements in the range ` `    ``int` `count = r - l + 1; ` ` `  `    ``// If total elements are already divisible by k ` `    ``if` `(count % k == 0) ` `        ``return` `0; ` ` `  `    ``// Value that must be added to count ` `    ``// in order to make it divisible by k ` `    ``return` `(k - (count % k)); ` `} ` ` `  `// Driver Program to test above function ` `    ``public` `static` `void` `Main () { ` `    ``int` `k = 3, l = 10, r = 10; ` `    ``Console.WriteLine(minimumMoves(k, l, r)); ` `    ``} ` `} ` `// This code is contributed  ` `// by inder_verma.. `

## PHP

 ` `

Output:

```2
```

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.