Given a tree as set of edges such that every node has unique value. We are also given a value k, the task is to count the unique paths in the tree such that every path has a value greater than K. A path value is said to be > K if every edge contributing in the path is connecting two nodes both of which have values > K.
Approach: The idea is to not form the tree with all the given edges. We only add an edge if it satisfies the condition of > k. In this case, a number of trees will be formed. While forming the different trees, we will only add the edge into the tree if both the node value are greater than K. After this, various number of trees will be created. Run a DFS for every node which in the end traverses the complete tree with which the node is attached and count the number of nodes in every tree. The number of unique paths for every tree which has X number of nodes is X * (X – 1) / 2.
Below is the implementation of the above approach:
- Number of Paths of Weight W in a K-ary tree
- Unique paths covering every non-obstacle block exactly once in a grid
- Number of nodes greater than a given value in n-ary tree
- Print the path common to the two paths from the root to the two given nodes
- Count all k-sum paths in a Binary Tree
- Print all k-sum paths in a binary tree
- Maximum product of two non-intersecting paths in a tree
- Print all the paths from root, with a specified sum in Binary tree
- Given a binary tree, print all root-to-leaf paths
- Given a binary tree, print out all of its root-to-leaf paths one per line.
- Root to leaf paths having equal lengths in a Binary Tree
- Reverse tree path
- XOR of path between any two nodes in a Binary Tree
- Reverse tree path using Queue
- Longest path in an undirected 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 firstname.lastname@example.org. 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.
Improved By : rituraj_jain