Tree Covering
 
 
- Dynamic Programming:
- 
An optimal solution must contain only optimal solutions to its sub-problems
 
 
Set cost of all:	internal nodes = -1
while(some v has cost < 0)
	select v whose children have all non-neg cost
	M = set of all matching pattern trees
	cost (v) = min ( cost(m)  + sum ( cost (u))
where m is element of M and u is leaf node of m.