Maximum points of intersection n circles

Given a number n, we need to find the maximum number of times n circles intersect.

Examples:

Input :  n = 2
Output : 2

Input :  n = 3
Output : 6


Description and Derivation

As we can see in above diagram, for each pair of circles, there can be maximum two intersectuib points. Therefore if we have n circles then there can be nC2 pairs of circles in which each pair will have two intersections. So by this we can conclude that by looking at all possible pairs of circles the mathematical formula can be made for the maximum number of intersection by n circles is given by 2 * nC2.

2 * nC2 = 2 * n * (n – 1)/2 = n * (n-1)

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP program to find maximum umber of 
// intersections of n circles
#include <bits/stdc++.h>
using namespace std;
  
// Returns maximum number of intersections
int intersection(int n)
{
   return n * (n - 1);
}
  
int main()
{
    cout << intersection(3) << endl;
    return 0;
}
// This code is contributed by 
// Manish Kumar Rai.

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to find maximum umber of 
// intersections of n circles
import java.io.*;
  
public class GFG {
  
    // for the calculation of 2*(nC2)
    static int intersection(int n)
    {
       return n * (n - 1);
    }
  
    public static void main(String[] args) throws IOException
    {
        System.out.println(intersection(3));
    }
}
// This code is contributed by 
// Manish Kumar Rai

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# python program to find maximum umber of 
# intersections of n circles
# Returns maximum number of intersections
def intersection(n):
      
   return n * (n - 1);
  
# Drive code
print(intersection(3))
  
# This code is contributed by Sam007

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to find maximum umber of 
// intersections of n circles
using System;
class GFG {
  
    // for the calculation of 2*(nC2)
    static int intersection(int n)
    {
        return n * (n - 1);
    }
  
// Driver Code
public static void Main()
{
    Console.WriteLine(intersection(3));
}
  
}
  
// This code is contributed by Sam007

chevron_right


php

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// php program to find maximum umber of 
// intersections of n circles
  
// Returns maximum number of intersections
function intersection($n)
{
   return $n * ($n - 1);
}
   
// Drive code
  
echo intersection(3);
  
  
// This code is contributed by Sam007
?>

chevron_right


Output:

6


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.



Improved By : Sam007