Skip to content
Related Articles

Related Articles

Value required to be added to N to obtain the sum of first M multiples of K
  • Last Updated : 04 May, 2021

Given three positive integers N, K, and M, the task is to find the number to be added to N to obtain the sum of first M multiples of K.

Examples:

Input: N = 17, K = 3, M = 4
Output: 13
Explanation:
Sum of first 4 multiples of 3 = (3 + 6 + 9 + 12) = 30.
Therefore, the value to be added to 17 is (30 – 17) = 13.
Therefore, the required output is 13.

Input: N = 5, K = 2, M = 1
Output: -3
Explanation:
Sum of first 1 multiples of 2 is 2.
The value to be added to 5 to get 2 is (2 – 5) = -3

Approach: Follow the steps below to solve the problem:



  1. Calculate the sum of first M multiples of K, which will be equal to K * (1 + 2 + 3 + … M) = K * M * (M + 1) / 2.
  2. Initialize a variable, say res, to store the number required to be added to N to obtain sum.
  3. Therefore, res will be equal to sum – N. Pritn the value of res.

Below is the implementation of the above approach:

C++




// C++ program for the above approach
#include <iostream>
using namespace std;
 
// Function to print the value
// to be added to N to obtain
// sum of first M multiples of K
static int printNumber(int N, int K, int M)
{
   
    // Store the sum of the
    // first M multiples of K
    int sum = K * (M * (M + 1) / 2);
     
    // Store the value to be
    // added to obtain N
    return sum - N;
}
 
// Driver Code
int main()
{
    // Input
    int N = 17;
    int K = 3;
    int M = 4;
    cout << printNumber(N, K, M);
    return 0;
}
 
// This code is contributed by shubhamsingh10

Java




// Java code of above approach
import java.util.*;
class GFG
{
 
  // Function to print the value
  // to be added to N to obtain
  // sum of first M multiples of K
  static int printNumber(int N, int K, int M)
  {
 
    // Store the sum of the
    // first M multiples of K
    int sum = K * (M * (M + 1) / 2);
 
    // Store the value to be
    // added to obtain N
    return sum - N;
  }
 
  // Driver code
  public static void main(String[] args)
  {
    // Input
    int N = 17;
    int K = 3;
    int M = 4;
    System.out.print(printNumber(N, K, M));
  }
}
 
// This code is contributed by offbeat

Python3




# Python3 program for the above approach
 
# Function to print the value
# to be added to N to obtain
# sum of first M multiples of K
def printNumber(N, K, M):
 
    # Store the sum of the
    # first M multiples of K
    sum = K * (M * (M + 1) / 2)
 
    # Store the value to be
    # added to obtain N
    return sum - N
 
# Driver Code
 
# Input
N = 17
K = 3
M = 4
 
print(int(printNumber(N, K, M)))

C#




// C# program for the above approach
using System;
class GFG
{
 
  // Function to print the value
  // to be added to N to obtain
  // sum of first M multiples of K
  static int printNumber(int N, int K, int M)
  {
 
    // Store the sum of the
    // first M multiples of K
    int sum = K * (M * (M + 1) / 2);
 
    // Store the value to be
    // added to obtain N
    return sum - N;
  }
 
  // Driver code
  public static void Main(String[] args)
  {
 
    // Input
    int N = 17;
    int K = 3;
    int M = 4;
    Console.Write(printNumber(N, K, M));
  }
}
 
// This code is contributed by shubhamsingh10

Javascript




<script>
 
// JavaScript program for the above approach
 
// Function to print the value
// to be added to N to obtain
// sum of first M multiples of K
function printNumber(N, K, M)
{
     
    // Store the sum of the
    // first M multiples of K
    var sum = K * ((M * (M + 1)) / 2);
     
    // Store the value to be
    // added to obtain N
    return sum - N;
}
 
// Driver Code
 
// Input
var N = 17;
var K = 3;
var M = 4;
 
document.write(printNumber(N, K, M));
 
// This code is contributed by rdtank
 
</script>
Output
13

Time Complexity: O(1)
Auxiliary Space: O(1)

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

My Personal Notes arrow_drop_up
Recommended Articles
Page :