Given an array arr of N elements and an integer K, the task is to count all the elements whose length is a multiple of K.
Examples:
Input: arr[]={1, 12, 3444, 544, 9}, K = 2
Output: 2
Explanation:
There are 2 numbers whose digit count is multiple of 2 {12, 3444}.
Input: arr[]={12, 345, 2, 68, 7896}, K = 3
Output: 1
Explanation:
There is 1 number whose digit count is multiple of 3 {345}.
Approach:
- Traverse the numbers in the array one by one
- Count the digits of every number in the array
- Check if its digit count is a multiple of K or not.
Below is the implementation of the above approach:
C++
// C++ implementation of above approach#include <bits/stdc++.h>using namespace std;// Function to find// digit count of numbersint digit_count(int x){ int sum = 0; while (x) { sum++; x = x / 10; } return sum;}// Function to find the count of numbersint find_count(vector<int> arr, int k){ int ans = 0; for (int i : arr) { // Get the digit count of each element int x = digit_count(i); // Check if the digit count // is divisible by K if (x % k == 0) // Increment the count // of required numbers by 1 ans += 1; } return ans;}// Driver codeint main(){ vector<int> arr = { 12, 345, 2, 68, 7896 }; int K = 2; cout << find_count(arr, K); return 0;} |
Java
// Java implementation of above approachclass GFG{ // Function to find// digit count of numbersstatic int digit_count(int x){ int sum = 0; while (x > 0) { sum++; x = x / 10; } return sum;} // Function to find the count of numbersstatic int find_count(int []arr, int k){ int ans = 0; for (int i : arr) { // Get the digit count of each element int x = digit_count(i); // Check if the digit count // is divisible by K if (x % k == 0) // Increment the count // of required numbers by 1 ans += 1; } return ans;} // Driver codepublic static void main(String[] args){ int []arr = { 12, 345, 2, 68, 7896 }; int K = 2; System.out.print(find_count(arr, K)); }}// This code is contributed by 29AjayKumar |
Python3
# Python3 implementation of above approach# Function to find# digit count of numbersdef digit_count(x): sum = 0 while (x): sum += 1 x = x // 10 return sum# Function to find the count of numbersdef find_count(arr,k): ans = 0 for i in arr: # Get the digit count of each element x = digit_count(i) # Check if the digit count # is divisible by K if (x % k == 0): # Increment the count # of required numbers by 1 ans += 1 return ans# Driver codeif __name__ == '__main__': arr = [12, 345, 2, 68, 7896] K = 2 print(find_count(arr, K))# This code is contributed by Surendra_Gangwar |
C#
// C# implementation of above approachusing System;public class GFG{// Function to find// digit count of numbersstatic int digit_count(int x){ int sum = 0; while (x > 0) { sum++; x = x / 10; } return sum;}// Function to find the count of numbersstatic int find_count(int []arr, int k){ int ans = 0; foreach (int i in arr) { // Get the digit count of each element int x = digit_count(i); // Check if the digit count // is divisible by K if (x % k == 0) // Increment the count // of required numbers by 1 ans += 1; } return ans;}// Driver codepublic static void Main(String[] args){ int []arr = { 12, 345, 2, 68, 7896 }; int K = 2; Console.Write(find_count(arr, K));}}// This code is contributed by Rajput-Ji |
Javascript
<script>// JavaScript implementation of above approach// Function to find// digit count of numbersfunction digit_count(x){ let sum = 0; while (x) { sum++; x = x / 10; } return sum;}// Function to find the count of numbersfunction find_count(arr, k){ let ans = 0; for (let i of arr) { // Get the digit count of each element let x = digit_count(i); // Check if the digit count // is divisible by K if (x % k == 0) // Increment the count // of required numbers by 1 ans += 1; } return ans;}// Driver codelet arr = [ 12, 345, 2, 68, 7896 ];let K = 2;document.write(find_count(arr, K));// This code is contributed by _saurabh_jaiswal</script> |
3
Time complexity:- O(N*log10M), where N is the size of array, and M is the largest number in the array.
Space complexity:- O(1)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

… [Trackback]
[…] Find More on that Topic: geeksforgeeks.org/count-of-integers-in-an-array-whose-length-is-a-multiple-of-k/ […]