Related Articles

# Count squares with odd side length in Chessboard

• Difficulty Level : Basic
• Last Updated : 17 May, 2021

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

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 counts 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

 ``

## Javascript

 ``
Output:
`120`

My Personal Notes arrow_drop_up