# 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 ^{n}C_{2} 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 * ^{n}C_{2}**.

2 * ^{n}C_{2} = 2 * n * (n – 1)/2 = **n * (n-1)**

## C++

`// 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*

*filter_none*

## Java

`// 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*

*filter_none*

## Python3

`# 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*

*filter_none*

## C#

`// 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*

*filter_none*

## php

`<?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*

*filter_none*

**Output:**

6

## Recommended Posts:

- Maximum points of intersection n lines
- Maximum possible intersection by moving centers of line segments
- Count maximum points on same line
- Angular Sweep (Maximum points that can be enclosed in a circle of given radius)
- Minimum number of points to be removed to get remaining points on one side of axis
- Steps required to visit M points in order on a circular ring of N points
- Count of obtuse angles in a circle with 'k' equidistant points between 2 given points
- Ways to choose three points with distance between the most distant points <= L
- Prime points (Points that split a number into two primes)
- Path in a Rectangle with Circles
- Number of Integral Points between Two Points
- Check if two given circles touch or intersect each other
- Program to calculate the area between two Concentric Circles
- Check whether given circle resides in boundary maintained by two other circles
- Length of rope tied around three equal circles touching each other

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.