# Count Distinct Rectangles in N*N Chessboard

Given a N x N Chessboard. The task is to count distinct rectangles from the chessboard. For example, if the input is 8 then the output should be 36.

Examples:

```Input: N = 4
Output: 10

Input: N = 6
Output: 21
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach:
Suppose N = 8 i.e. 8 x 8 chessboard is given, So different rectangles that can be formed are:

```1 x 1, 1 x 2, 1 x 3, 1 x 4, 1 x 5, 1 x 6, 1 x 7, 1 x 8 = 8
2 x 2, 2 x 3, 2 x 4, 2 x 5, 2 x 6, 2 x 7, 2 x 8 = 7
3 x 3, 3 x 4, 3 x 5, 3 x 6, 2 x 7, 3 x 8 = 6
4 x 4, 4 x 5, 4 x 6, 4 x 7, 4 x 8 = 5
5 x 5, 5 x 6, 5 x 7, 5 x 8 = 4
6 x 6, 6 x 7, 6 x 8 = 3
7 x 7, 7 x 8 = 2
8 x 8 = 1
```

So total unique rectangles formed = 8 + 7 + 6 + 5 + 4 + 3 + 2 + 1 = 36 which is the sum of the first 8 natural numbers. So in general, distinct rectangles that can be formed in N x N chessboard is:

```Sum of the first N natural numbers = N*(N+1)/2
= 8*(8+1)/2
= 36
```

Below is the implementation of the above approach:

## C++

 `// C++ code to count distinct rectangle in a chessboard ` `#include   ` `using` `namespace` `std;  ` ` `  `// Function to return the count  ` `// of distinct rectangles  ` `int` `count(``int` `N) ` `{ ` `    ``int` `a = 0; ` `    ``a = (N * (N + 1)) / 2; ` `    ``return` `a; ` `} ` ` `  `// Driver Code ` `int` `main() ` `{ ` `    ``int` `N = 4; ` `    ``cout<

## Java

 `// Java program to count unique rectangles in a chessboard ` `class` `Rectangle { ` ` `  `    ``// Function to count distinct rectangles ` `    ``static` `int` `count(``int` `N) ` `    ``{ ` `        ``int` `a = ``0``; ` ` `  `        ``a = (N * (N + ``1``)) / ``2``; ` ` `  `        ``return` `a; ` `    ``} ` ` `  `    ``// Driver Code ` `    ``public` `static` `void` `main(String args[]) ` `    ``{ ` `        ``int` `n = ``4``; ` `        ``System.out.print(count(n));  ` `    ``} ` `} `

## Python3

 `    ``# Python code to count distinct rectangle in a chessboard ` ` `  `# Function to return the count  ` `# of distinct rectangles  ` `def` `count(N): ` `    ``a ``=` `0``; ` `    ``a ``=` `(N ``*` `(N ``+` `1``)) ``/` `2``; ` `    ``return` `int``(a); ` ` `  ` `  `# Driver Code ` `N ``=` `4``; ` `print``(count(N));  ` ` `  `# This code has been contributed by 29AjayKumar `

## C#

 `// C# program to count unique rectangles in a chessboard  ` `using` `System; ` ` `  `class` `Rectangle  ` `{  ` ` `  `    ``// Function to count distinct rectangles  ` `    ``static` `int` `count(``int` `N)  ` `    ``{  ` `        ``int` `a = 0;  ` ` `  `        ``a = (N * (N + 1)) / 2;  ` ` `  `        ``return` `a;  ` `    ``}  ` ` `  `    ``// Driver Code  ` `    ``public` `static` `void` `Main()  ` `    ``{  ` `        ``int` `n = 4;  ` `        ``Console.Write(count(n));  ` `    ``}  ` `}  ` ` `  `// This code is contributed by AnkitRai01 `

Output:

```10
```

GeeksforGeeks has prepared a complete interview preparation course with premium videos, theory, practice problems, TA support and many more features. Please refer Placement 100 for details

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.