Count number of even and odd length elements in an Array
Last Updated :
25 Sep, 2022
Given an array arr[] of integers of size N, the task is to find the number elements of the array having even and odd length.
Examples:
Input: arr[] = {14, 735, 3333, 223222}
Output: Number of even length elements = 3
Number of odd length elements = 1
Input: arr[] = {1121, 322, 32, 14783, 44}
Output: Number of even length elements = 3
Number of odd length elements = 2
Approach: To calculate the number of digits having even length or odd length, convert each number into a string. Then check if the length is odd or even. Finally, print the count of numbers having even length and odd length separately.
Below is the implementation of the above approach:
CPP
#include <bits/stdc++.h>
using namespace std;
void EvenOddLength( int arr[], int n)
{
int even = 0;
for ( int i = 0; i < n; i++) {
string x = to_string(arr[i]);
if (x.length() % 2 == 0)
even++;
}
cout << "Number of even "
<< "length elements = "
<< even << endl;
cout << "Number of odd "
<< "length elements = "
<< n - even << endl;
}
int main()
{
int arr[] = { 12, 44, 213, 232, 3433 };
int n = sizeof (arr) / sizeof (arr[0]);
EvenOddLength(arr, n);
return 0;
}
|
Java
import java.util.*;
class GFG{
static void EvenOddLength( int arr[], int n)
{
int even = 0 ;
for ( int i = 0 ; i < n; i++) {
String x = Integer.toString(arr[i]);
if (x.length() % 2 == 0 )
even++;
}
System.out.println( "Number of even length elements = " +even);
System.out.println( "Number of odd length elements = " +(n - even));
}
public static void main(String args[])
{
int arr[] = { 12 , 44 , 213 , 232 , 3433 };
int n = arr.length;
EvenOddLength(arr, n);
}
}
|
Python3
def EvenOddLength(arr, n):
even = 0
for i in range (n):
x = str (arr[i])
if ( len (x) % 2 = = 0 ):
even + = 1
print ( "Number of even length elements = " , even)
print ( "Number of odd length elements = " , n - even)
if __name__ = = '__main__' :
arr = [ 12 , 44 , 213 , 232 , 3433 ]
n = len (arr)
EvenOddLength(arr, n)
|
C#
using System;
class GFG{
static void EvenOddLength( int []arr, int n)
{
int even = 0;
for ( int i = 0; i < n; i++) {
String x = arr[i].ToString();
if (x.Length % 2 == 0)
even++;
}
Console.WriteLine( "Number of even length elements = " +even);
Console.WriteLine( "Number of odd length elements = " +(n - even));
}
public static void Main(String []args)
{
int []arr = { 12, 44, 213, 232, 3433 };
int n = arr.Length;
EvenOddLength(arr, n);
}
}
|
Javascript
<script>
function EvenOddLength(arr, n)
{
let even = 0;
for (let i = 0; i < n; i++)
{
let x = arr[i].toString();
if ((x.length) % 2 == 0)
even++;
}
document.write( "Number of even "
+ "length elements = "
+ even + "<br>" );
document.write( "Number of odd "
+ "length elements = " );
document.write(n - even + "<br>" );
}
let arr = [ 12, 44, 213, 232, 3433 ];
let n = arr.length;
EvenOddLength(arr, n);
</script>
|
Output:
Number of even length elements = 3
Number of odd length elements = 2
Time complexity: O(n) where n is the size of the given array.
Auxiliary space: O(1), as the temporary string will be of max size 10, it can be considered as constant.
Share your thoughts in the comments
Please Login to comment...