Suppose we have one array. we have to count how many of the elements present in the array prime number of times. So if the array is {1, 2, 2, 0, 1, 5, 2, 5, 0, 0, 1, 1}, then 1 is present 4 times, 2 is present 3 times, 0 is present 3 times, and 5 is present 2 times. So there are three elements {2, 0, 5} that have occurred prime number of times. So the count will be 3.
Algorithm
countPrimeOccurrence(arr, n)
Begin
count := 0
define map with int type key and int type value
for each element e in arr, do
increase map.key(arr).value
done
for each key check whether the value corresponding the value is prime or not, if prime, then increase count.
return count
End
登录后复制
Example
#include
#include
using namespace std;
bool isPrime(int n){
for(int i = 2; i