Count pairs having distinct sum from a given range

• Last Updated : 30 Jun, 2021

Given two positive integers L and R, the task is to find the number of pairs with elements from the range [L, R], whose sums are distinct.

Examples:

Input: L = 2, R = 3
Output: 3
Explanation:
All possible pairs with elements from the range [2, 3] are {(2, 2), (2, 3), (3, 2), (3, 3)}. Since sum of the pairs (2, 3) and (3, 2) are equal, the count of pairs with distinct sum is 3.

Input: L = 2, R = 2
Output: 1

Approach: Follow the steps below to solve the problem:

• Initialize a variable, say firstNum, to store the least sum that can be obtained by the pairs, i.e. 2 * L.
• Initialize a variable, say lastNum, to store the highest sum which can be obtained by the pairs, i.e. 2 * R.
• Initialize a variable, say cntPairs, to store the count of pairs having distinct sum, i.e. lastNum – firstNum + 1.
• Finally, print the value of cntPairs.

Below is the implementation of the above approach:

C++

 // C++ program for // the above approach   #include using namespace std;   // Function to count pairs made // up of elements from the range // [L, R] having distinct sum long countPairs(long L, long R) {       // Stores the least sum which     // can be formed by the pairs     long firstNum = 2 * L;       // Stores the highest sum which     // can be formed by the pairs     long lastNum = 2 * R;       // Stores the count of pairs     // having distinct sum     long Cntpairs = lastNum - firstNum + 1;       // Print the count of pairs     cout << Cntpairs; }   // Driver Code int main() {     long L = 2, R = 3;       // Function call to count     // the number of pairs     // having distinct sum in     // the range [L, R]     countPairs(L, R);       return 0; }

Java

 // Java program for // the above approach   import java.io.*;   class GFG {       // Function to count pairs made     // up of elements from the range     // [L, R] having distinct sum     static void countPairs(long L, long R)     {           // Stores the least sum which         // can be formed by the pairs         long firstNum = 2 * L;           // Stores the highest sum which         // can be formed by the pairs         long lastNum = 2 * R;           // Stores the count of pairs         // having distinct sum         long Cntpairs = lastNum - firstNum + 1;           // Print the count of pairs         System.out.println(Cntpairs);     }       // Driver Code     public static void main(String[] args)     {         long L = 2, R = 3;           // Function call to count         // the number of pairs         // having distinct sum in         // the range [L, R]         countPairs(L, R);     } }

Python3

 # Python3 program for # the above approach   # Function to count pairs made # up of elements from the range # [L, R] having distinct sum def countPairs(L, R):       # Stores the least sum which     # can be formed by the pairs     firstNum = 2 * L       # Stores the highest sum which     # can be formed by the pairs     lastNum = 2 * R       # Stores the count of pairs     # having distinct sum     Cntpairs = lastNum - firstNum + 1       # Print the count of pairs     print (Cntpairs)   # Driver Code if __name__ == '__main__':     L,R = 2,3       # Function call to count     # the number of pairs     # having distinct sum in     # the range [L, R]     countPairs(L, R)       # This code is contributed by mohit kumar 29.

C#

 // C# program for // the above approach   using System;   public class GFG {       // Function to count pairs made     // up of elements from the range     // [L, R] having distinct sum     static void countPairs(long L, long R)     {           // Stores the least sum which         // can be formed by the pairs         long firstNum = 2 * L;           // Stores the highest sum which         // can be formed by the pairs         long lastNum = 2 * R;           // Stores the count of pairs         // having distinct sum         long Cntpairs = lastNum - firstNum + 1;           Console.WriteLine(Cntpairs);     }       // Driver Code     static public void Main()     {         long L = 2, R = 3;           // Function call to count         // the number of pairs         // having distinct sum in         // the range [L, R]         countPairs(L, R);     } }

Javascript



Output:

3

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

My Personal Notes arrow_drop_up
Recommended Articles
Page :