# Check if sum of count of digits of array elements is Prime or not

• Last Updated : 17 May, 2021

Given an array A[] consisting of N integers, the task is to check if the sum of numbers of digits in each array element is a prime number or not.

Examples:

Input: A[] = {1, 11, 12}
Output: Yes
Explanation: Count of digits of A[0], A[1] and A[2] are 1, 2, 2 respectively. Therefore, total sum of count of digits = 1 + 2 + 2 = 5, which is prime.

Input: A[] = {1, 11, 123}
Output: No

Approach: Follow the steps below to solve the problem:

1. Initialize a variable sum, to store the sum of the number of digits of array elements.
2. Traverse the array and convert each array element to its equivalent string
3. Add the length of every string to sum.
4. Check if the value of sum after complete traversal of the array, is prime or not.
5. Print Yes if found to be true. Otherwise, print No.

Below is the implementation of the above approach:

## C++

 `// C++ program for the above approach``#include ``using` `namespace` `std;` `// Function to check whether``// a number is prime or not``bool` `isPrime(``int` `n)``{``    ``// Corner cases``    ``if` `(n <= 1)``        ``return` `false``;``    ``if` `(n <= 3)``        ``return` `true``;` `    ``// If given number is a``    ``// multiple of 2 or 3``    ``if` `(n % 2 == 0 || n % 3 == 0)``        ``return` `false``;` `    ``for` `(``int` `i = 5; i * i <= n; i = i + 6)``        ``if` `(n % i == 0 || n % (i + 2) == 0)``            ``return` `false``;` `    ``return` `true``;``}` `// Function to check if sum``// of count of digits of all``// array elements is prime or not``void` `CheckSumPrime(``int` `A[], ``int` `N)``{``    ``// Initialize sum with 0``    ``int` `sum = 0;` `    ``// Traverse over the array``    ``for` `(``int` `i = 0; i < N; i++) {` `        ``// Convert array element to string``        ``string s = to_string(A[i]);` `        ``// Add the count of``        ``// digits to sum``        ``sum += s.length();``    ``}` `    ``// Print the result``    ``if` `(isPrime(sum)) {` `        ``cout << ``"Yes"` `<< endl;``    ``}``    ``else` `{` `        ``cout << ``"No"` `<< endl;``    ``}``}` `// Drive Code``int` `main()``{` `    ``int` `A[] = { 1, 11, 12 };` `    ``int` `N = ``sizeof``(A) / ``sizeof``(A[0]);` `    ``// Function call``    ``CheckSumPrime(A, N);` `    ``return` `0;``}`

## Java

 `// Java program for the above approach``import` `java.io.*;``import` `java.util.*;` `class` `GFG{` `// Function to check whether``// a number is prime or not``static` `boolean` `isPrime(``int` `n)``{``    ` `    ``// Corner cases``    ``if` `(n <= ``1``)``        ``return` `false``;``    ``if` `(n <= ``3``)``        ``return` `true``;` `    ``// If given number is a``    ``// multiple of 2 or 3``    ``if` `(n % ``2` `== ``0` `|| n % ``3` `== ``0``)``        ``return` `false``;` `    ``for``(``int` `i = ``5``; i * i <= n; i = i + ``6``)``        ``if` `(n % i == ``0` `|| n % (i + ``2``) == ``0``)``            ``return` `false``;` `    ``return` `true``;``}` `// Function to check if sum``// of count of digits of all``// array elements is prime or not``static` `void` `CheckSumPrime(``int``[] A, ``int` `N)``{``    ` `    ``// Initialize sum with 0``    ``int` `sum = ``0``;` `    ``// Traverse over the array``    ``for``(``int` `i = ``0``; i < N; i++)``    ``{``        ` `        ``// Convert array element to string``        ``String s = Integer.toString(A[i]);` `        ``// Add the count of``        ``// digits to sum``        ``sum += s.length();``    ``}` `    ``// Print the result``    ``if` `(isPrime(sum) == ``true``)``    ``{``        ``System.out.println(``"Yes"``);``    ``}``    ``else``    ``{``        ``System.out.println(``"No"``);``    ``}``}` `// Drive Code``public` `static` `void` `main(String[] args)``{``    ``int``[] A = { ``1``, ``11``, ``12` `};` `    ``int` `N = A.length;` `    ``// Function call``    ``CheckSumPrime(A, N);``}``}` `// This code is contributed by akhilsaini`

## Python3

 `# Python3 program for the above approach``import` `math` `# Function to check whether``# a number is prime or not``def` `isPrime(n):``    ` `    ``# Corner cases``    ``if` `(n <``=` `1``):``        ``return` `False``    ``if` `(n <``=` `3``):``        ``return` `True` `    ``# If given number is a``    ``# multiple of 2 or 3``    ``if` `(n ``%` `2` `=``=` `0` `or` `n ``%` `3` `=``=` `0``):``        ``return` `False` `    ``for` `i ``in` `range``(``5``, ``int``(math.sqrt(n) ``+` `1``), ``6``):``        ``if` `(n ``%` `i ``=``=` `0` `or` `n ``%` `(i ``+` `2``) ``=``=` `0``):``            ``return` `False` `    ``return` `True` `# Function to check if sum``# of count of digits of all``# array elements is prime or not``def` `CheckSumPrime(A, N):``    ` `    ``# Initialize sum with 0``    ``sum` `=` `0` `    ``# Traverse over the array``    ``for` `i ``in` `range``(``0``, N):``        ` `        ``# Convert array element to string``        ``s ``=` `str``(A[i])` `        ``# Add the count of``        ``# digits to sum``        ``sum` `+``=` `len``(s)` `    ``# Print the result``    ``if` `(isPrime(``sum``) ``=``=` `True``):``        ``print``(``"Yes"``)``    ``else``:``        ``print``(``"No"``)` `# Drive Code``if` `__name__ ``=``=` `'__main__'``:``    ` `    ``A ``=` `[ ``1``, ``11``, ``12` `]` `    ``N ``=` `len``(A)` `    ``# Function call``    ``CheckSumPrime(A, N)` `# This code is contributed by akhilsaini`

## C#

 `// C# program for the above approach``using` `System;` `class` `GFG{` `// Function to check whether``// a number is prime or not``static` `bool` `isPrime(``int` `n)``{``    ` `    ``// Corner cases``    ``if` `(n <= 1)``        ``return` `false``;``    ``if` `(n <= 3)``        ``return` `true``;` `    ``// If given number is a``    ``// multiple of 2 or 3``    ``if` `(n % 2 == 0 || n % 3 == 0)``        ``return` `false``;` `    ``for``(``int` `i = 5; i * i <= n; i = i + 6)``        ``if` `(n % i == 0 || n % (i + 2) == 0)``            ``return` `false``;` `    ``return` `true``;``}` `// Function to check if sum``// of count of digits of all``// array elements is prime or not``static` `void` `CheckSumPrime(``int``[] A, ``int` `N)``{``    ` `    ``// Initialize sum with 0``    ``int` `sum = 0;` `    ``// Traverse over the array``    ``for``(``int` `i = 0; i < N; i++)``    ``{``        ` `        ``// Convert array element to string``        ``String s = A[i].ToString();` `        ``// Add the count of``        ``// digits to sum``        ``sum += s.Length;``    ``}` `    ``// Print the result``    ``if` `(isPrime(sum) == ``true``)``    ``{``        ``Console.WriteLine(``"Yes"``);``    ``}``    ``else``    ``{``        ``Console.WriteLine(``"No"``);``    ``}``}` `// Drive Code``public` `static` `void` `Main()``{``    ``int``[] A = { 1, 11, 12 };` `    ``int` `N = A.Length;` `    ``// Function call``    ``CheckSumPrime(A, N);``}``}` `// This code is contributed by akhilsaini`

## Javascript

 ``
Output:
`Yes`

Time Complexity: O(N3/2)
Auxiliary Space: O(1)

My Personal Notes arrow_drop_up