Given a tree, and the weights of all the nodes, the task is to count the number of nodes whose weight is a Powerful Number.
A number n is said to be Powerful Number if, for every prime factor p of it, p2 also divides it.
4, 16 and 25 are powerful weights in the tree.
Approach: To solve the problem mentioned above we have to perform Depth First Search(DFS) on the tree and for every node, check if it’s weight is a powerful number or not. If yes then increment the count.
Below is the implementation of the above approach:
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Count the nodes in the given Tree whose weight is a Perfect Number
- Count nodes in the given tree whose weight is a fibonacci number
- Count of all prime weight nodes between given nodes in the given Tree
- Count the nodes in the given tree whose weight is even
- Count the nodes in the given tree whose weight is a power of two
- Count the nodes in the given tree whose weight is even parity
- Count the nodes in the given tree whose sum of digits of weight is odd
- Count the nodes in the given tree whose weight is prime
- Count the nodes of the given tree whose weight has X as a factor
- Count of Nodes which has Prime Digit sum weight in a Tree
- Count number of paths whose weight is exactly X and has at-least one edge of weight M
- Query to find the maximum and minimum weight between two nodes in the given tree using LCA.
- Count the nodes whose weight is a perfect square
- Count the number of nodes at given level in a tree using BFS.
- Count the number of nodes at a given level in a tree using DFS
- Given a n-ary tree, count number of nodes which have more number of children than parents
- Count the number of visible nodes in Binary Tree
- Count the nodes of the tree which make a pangram when concatenated with the sub-tree nodes
- Number of Paths of Weight W in a K-ary tree
- Count Non-Leaf nodes in a Binary Tree
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.