编程题
### 问题描述
晓宇设计了一棵 $n$ 个点的有根树,节点编号为 $1~n$ ,根节点为 $1$ 。最开始所有点都是白色,你需要选择一些点染成黑色,同时有若干条限制,
限制有两种: $A$ 类限制: $x$ 的子树内至少有 $y$ 个点被染成黑色。 $B$ 类限制: $x$ 的子树外至少有 $y$个点被染成黑色。
请问最少把多少个点染成黑色才能满足条件,如果无解输出 $-1$ 。
### 输入格式
第一行一个正整数 $n$ 。
接下来 $n-1$ 行,每行两个正整数 $x, y$ ,表示 $x$ 与 $y$ 之间有一条边。
接下来 $1$ 行读入整数 $A$ ,表示 $A$ 限制的数量。
接下来 $A$ 行,每行两个整数 $x$ , $y$ ,表示一条$A$限制。
接下来 $1$ 行读入整数 $B$ ,表示 $B$ 限制的数量。
接下来 $B$ 行,每行两个整数 $x$ , $y$ ,表示一条 $B$ 限制。
### 输出格式
一行一个整数,表示答案。
### 样例输入
```
3
1 2
1 3
2
2 1
3 1
2
2 1
3 1
```
### 样例输出
```
2
```
### 评测数据范围
对于 $30\\%$ 的数据,满足 $n \le 1000$ 。
对于再 $30\\%$ 的数据,满足 $ B = 0 $ 。
对于 $100\\%$ 的数据,满足 $1 \le n \le 100000, 0 \le A, B, x, y \le 100000$ 。