题目描述
有 n 位同学,编号从 1 到 n。
他们参加了两轮考试。
已知:第 i 位同学在第一轮考试的排名为 ai,在第二轮考试的排名为 bi。
接下来有 q 次询问,每次询问包含四个整数 l1,r1,l2,r2(1≤l1≤r1≤n,1≤l2≤r2≤n),对于每次询问,你需要回答出有多少位同学第一轮考试的排名在 [l1,r1] 之间,同时第二轮考试的排名在 [l2,r2] 之间 —— 即统计有多少下标 i 同时满足 l1≤ai≤r1 且 l2≤bi≤r2。
输入格式
第一行,一个整数 n(1≤n≤2×105),表示同学人数。
第二行,n 个整数 a1,a2,…,an(是一个 1∼n 的排列),其中 ai 表示第 i 位同学在第一轮考试中的排名。
第三行,n 个整数 b1,b2,…,bn(是一个 1∼n 的排列),其中 bi 表示第 i 位同学在第二轮考试中的排名。
第四行,一个整数 q(1≤q≤2×105),表示询问次数。
接下来 q 行,每行包含四个整数 l1,r1,l2,r2,表示一次询问(1≤l1≤r1≤n,1≤l2≤r2≤n)。
输出格式
对于每次询问,输出一行,包含一个整数,表示第一轮测试的排名在 [l1,r1] 之间,同时第二次测试的排名在 [l2,r2] 之间的学生人数。
样例
5
1 3 4 2 5
2 5 4 1 3
3
1 3 2 4
2 5 1 4
1 4 2 5
1
3
3
10
4 2 5 3 8 7 10 1 9 6
7 1 3 2 8 6 9 5 4 10
8
1 8 3 9
2 5 4 9
8 8 8 8
1 3 9 10
1 5 6 10
1 5 1 5
1 4 5 10
1 10 1 10
5
1
1
0
1
4
2
10
说明/提示
数据规模与约定
- 对于 30% 的数据,n,q≤1000
- 对于 100% 的数据,1≤n,q≤2×105,a,b 均为 1∼n 的排列,1≤l1≤r1≤n,1≤l2≤r2≤n