# Count squares with odd side length in Chessboard

Given a N * N chessboard, the task is to count the number of squares having the odd side length.

Example:

Input: N = 3
Output: 10
9 squares are possible whose sides are 1
and a single square with side = 3
9 + 1 = 10

Input: N = 8
Output: 120

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

Approach: For all odd numbers from 1 to N and then calculate the number of squares that can be formed having that odd side. For the ith side, the count of squares is equal to (N – i + 1)2. Further add all such count of squares.

Below is the implementation of the above approach:

## C++

 `// C++ implementation of the approach ` `#include ` `using` `namespace` `std; ` ` `  `// Function to return the count ` `// of odd length squares possible ` `int` `count_square(``int` `n) ` `{ ` ` `  `    ``// To store the required count ` `    ``int` `count = 0; ` ` `  `    ``// For all odd values of i ` `    ``for` `(``int` `i = 1; i <= n; i = i + 2) { ` ` `  `        ``// Add the count of possible ` `        ``// squares of length i ` `        ``int` `k = n - i + 1; ` `        ``count += (k * k); ` `    ``} ` ` `  `    ``// Return the required count ` `    ``return` `count; ` `} ` ` `  `// Driver code ` `int` `main() ` `{ ` `    ``int` `N = 8; ` ` `  `    ``cout << count_square(N); ` ` `  `    ``return` `0; ` `} `

## Java

 `// Java implementation of the approach ` `class` `GFG { ` ` `  `    ``// Function to return the count ` `    ``// of odd length squares possible ` `    ``static` `int` `count_square(``int` `n) ` `    ``{ ` ` `  `        ``// To store the required count ` `        ``int` `count = ``0``; ` ` `  `        ``// For all odd values of i ` `        ``for` `(``int` `i = ``1``; i <= n; i = i + ``2``) { ` ` `  `            ``// Add the count of possible ` `            ``// squares of length i ` `            ``int` `k = n - i + ``1``; ` `            ``count += (k * k); ` `        ``} ` ` `  `        ``// Return the required count ` `        ``return` `count; ` `    ``} ` ` `  `    ``// Driver code ` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``int` `N = ``8``; ` ` `  `        ``System.out.println(count_square(N)); ` `    ``} ` `} ` ` `  `// This code is contributed by Rajput-Ji `

## Python3

 `     `  `# Python implementation of the approach ` ` `  `# Function to return the count ` `# of odd length squares possible ` `def` `count_square(n): ` ` `  `    ``# To store the required count ` `    ``count ``=` `0``; ` ` `  `    ``# For all odd values of i ` `    ``for` `i ``in` `range``(``1``, n ``+` `1``, ``2``): ` ` `  `        ``# Add the count of possible ` `        ``# squares of length i ` `        ``k ``=` `n ``-` `i ``+` `1``; ` `        ``count ``+``=` `(k ``*` `k); ` ` `  `    ``# Return the required count ` `    ``return` `count; ` ` `  `# Driver code ` `N ``=` `8``; ` `print``(count_square(N)); ` ` `  `# This code has been contributed by 29AjayKumar `

## C#

 `// C# implementation of the approach ` `using` `System; ` ` `  `class` `GFG { ` ` `  `    ``// Function to return the count ` `    ``// of odd length squares possible ` `    ``static` `int` `count_square(``int` `n) ` `    ``{ ` ` `  `        ``// To store the required count ` `        ``int` `count = 0; ` ` `  `        ``// For all odd values of i ` `        ``for` `(``int` `i = 1; i <= n; i = i + 2) { ` ` `  `            ``// Add the count of possible ` `            ``// squares of length i ` `            ``int` `k = n - i + 1; ` `            ``count += (k * k); ` `        ``} ` ` `  `        ``// Return the required count ` `        ``return` `count; ` `    ``} ` ` `  `    ``// Driver code ` `    ``public` `static` `void` `Main() ` `    ``{ ` `        ``int` `N = 8; ` ` `  `        ``Console.WriteLine(count_square(N)); ` `    ``} ` `} ` ` `  `// This code is contributed by Code_Mech. `

## PHP

 ` `

Output:

```120
``` 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.