Given two integers ‘X’ and ‘N’, the task is to split the integer ‘X’ into exactly ‘N’ parts such that:
X1 + X2 + X3 + ... + Xn = X and the difference between the maximum and the minimum number from the sequence is minimized.
Print the sequence in the end, if the number cannot be divided into exactly ‘N’ parts then print ‘-1’ instead.
Input: X = 5, N = 3
Output: 1 2 2
Divide 5 into 3 parts such that the difference between the largest and smallest integer among
them is as minimal as possible. So we divide 5 as 1 + 2 + 2.
Input: X = 25, N = 5
Output: 5 5 5 5 5
Approach: There is always a way of splitting the number if
X >= N.
- If the number is being split into exactly ‘N’ parts then every part will have the value
X/Nand the remaining
X%Npart can be distributed among any
- Thus, if
X % N == 0then the minimum difference will always be ‘0’ and the sequence will contain all equal numbers i.e.
- Else, the difference will be ‘1’ and the sequence will be
X/N, X/N, ..., (X/N)+1, (X/N)+1..
Below is the implementation of the above approach:
1 2 2
- Partiton N into M parts such that difference between Max and Min part is smallest
- Split a number into 3 parts such that none of the parts is divisible by 3
- Find if a number is part of AP whose first element and difference are given
- Break a number such that sum of maximum divisors of all parts is minimum
- Form lexicographically smallest string with minimum replacements having equal number of 0s, 1s and 2s
- Minimum absolute difference of a number and its closest prime
- Find the Largest Cube formed by Deleting minimum Digits from a number
- Minimum Cuts can be made in the Chessboard such that it is not divided into 2 parts
- Minimum cuts required to divide the Circle into equal parts
- Count number of ways to divide a number in 4 parts
- Break the number into three parts
- Sum and product of k smallest and k largest composite numbers in the array
- Sum and product of k smallest and k largest prime numbers in the array
- Divide a big number into two parts that differ by k
- Partition a number into two divisble parts