- Related Questions & Answers
- Check if given number is perfect square in Python
- Check if a number is perfect square without finding square root in C++
- Check Perfect Square or Not
- Check whether the number formed by concatenating two numbers is a perfect square or not in Python
- Check for perfect square in JavaScript
- Absolute Difference between the Product of Non-Prime numbers and Prime numbers of an Array?
- Product of all prime numbers in an Array in C++
- Check if N is a Factorial Prime in Python
- Print n numbers such that their sum is a perfect square
- Check if a prime number can be expressed as sum of two Prime Numbers in Python
- Check if N is Strong Prime in Python
- Check if product of first N natural numbers is divisible by their sum in Python
- Count of pairs in an array whose sum is a perfect square in C++
- Check if elements of array can be made equal by multiplying given prime numbers in Python
- Check if LCM of array elements is divisible by a prime number or not in Python

- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who

Suppose we have an array nums with all prime numbers. We have to check whether the product of all numbers present in nums is a perfect square or not.

So, if the input is like nums = [3,3,7,7], then the output will be True as product of all elements in nums is 441 which is a perfect square as 21^2 = 441.

To solve this, we will follow these steps −

- m := a map containing all elements in nums and their frequencies
- for each key in nums, do
- if m[key] is odd, then
- return False

- if m[key] is odd, then
- return True

Let us see the following implementation to get better understanding −

from collections import defaultdict def solve(nums) : m = defaultdict(int) for key in nums : m[key] += 1 for key in nums : if m[key] % 2 == 1 : return False return True nums = [3,3,7,7] print(solve(nums))

[3,3,7,7]

True

Advertisements