Beautiful pair of nodes

5

1 votes
Advanced Data Structures, Data Structures, Depth First Search, Fenwick Tree, Fenwick tree, Hard, Open, treap
Problem

You are given a rooted tree having n nodes, rooted at node 1. Every node i has two values associated with itself , A[i] and B[i]. In this tree you have to count total pairs of nodes which are beautiful. A pair of nodes i , j is beautiful if i is ancestor of node j and A[i]<A[j] and B[i]<B[j].
Node i is called an ancestor of some node j, if node i is the parent of node j, or it is the ancestor of parent of node j. The root of a tree has no ancestors.
Input
First line contains a number n as input. Next n1 lines contain two integers u , v denoting that there is an edge between the nodes u and v. Next line contains n space separated integers that denote the A[i] value for each node. Similarly next line contains n space separated integers that denote the B[i] value for each node.

Output
In the output you have to print total good pairs in the tree.

Constraints
1N105
1A[i]109
1B[i]109

Time Limit: 2
Memory Limit: 256
Source Limit:
Explanation

In the given tree you can see that the following pair of nodes are good : (1,7) , (3,7) and (1,2)

Editor Image

?