#P10403. 梦

题目背景

「真是,仿佛做了一个长达 55 年的梦呢。」

“怎么?”

「从 55 年前写下第一份程序 Hello, World! 起,我就深深的喜爱上了 OI。我觉得代码是有温度的,是有感情的。它比我当时最爱的数学竞赛有意思很多,我总是沉浸在和程序“对话”的世界里。正是这份执着与热爱,我奋斗了 55 个春秋。」

“唔……”

「一路上走来,我经历了太多。伴随着种种情绪,或欢喜,或失落……很多画面我早已记不得了,但是在我残存的记忆中,总有一些场景始终能浮现眼前……」

“作为 OIer 的我们,与别的竞赛不同,我们付出的心血和时间真的比它们多太多……”

「正因为如此,我才有了很多的感触。我总是在某一时刻突然回忆起一些过往的事,像梦,却又那么模糊——我仍记得那些人与事,他们的欢笑、话语,我仍记得!」

“是呢,毕竟这些都是笑与泪堆积起来的记忆。”

「或许就是这样吧。纵使一路走来,我们看见了无尽的景色,但只有那些与我们内心共鸣的声音——或来自于自然、或来自于他人的灵魂——才会真正的改变我们自己。」

“未来的路还很长,共勉。”

题目描述

「我仍能记起 nn 件画面,有一些画面让我欢喜,有一些则让我尤为失落。我想将他们的愉悦值按照大小关系量化为一个 1n1\sim n 的排列。」

「情绪从是起起伏伏、一波三折的。假如我给定一个大小为 44 的排列 pp,我想知道,从这些画面中按顺序选出 44 个画面,使得它们的愉悦值大小关系与 pp 一致的方案数是多少。」

”这个问题值得研究,容我思考思考。“

形式化题意

给定一个大小为 44 的排列 pp,以及一个大小为 nn 的排列 aa,求满足如下条件的四元组 (t1,t2,t3,t4)(t_1,t_2,t_3,t_4) 个数:

  • 1t1<t2<t3<t4n1\le t_1<t_2<t_3<t_4\le n
  • 对于 1i,j4\forall 1\le i,j\le 4(pipj)(atiatj)0(p_i-p_j)\cdot (a_{t_i}-a_{t_j})\ge 0

输入格式

第一行,输入一个整数 n (1n5000)n\ (1\le n\le 5000)

第二行,输入 44 个数,第 ii 个数表示 pip_i,保证 pp 构成一个 141\sim 4 的排列。

第三行,输入 nn 个数,第 ii 个数表示 aia_i,保证 aa 构成一个 1n1\sim n 的排列。

输出格式

输出满足条件的四元组个数。

样例输入 1

5
1 2 3 4
1 2 3 4 5

样例输出 1

5

样例解释 1

任意的四元组均满足条件,故有 (54)=5\binom{5}{4}=5 个。

样例输入 2

8
1 3 2 4
1 2 5 6 3 4 7 8

样例输出 2

16

下发文件中:

  • ex_dream3 满足子任务 1 的性质;
  • ex_dream4 满足子任务 3 的性质;
  • ex_dream5 满足子任务 4 的性质;
  • ex_dream6 满足子任务 5 的性质;
  • ex_dream7 满足子任务 7 的性质;
  • ex_dream8 无特殊性质。

数据范围

本题采用 subtask 捆绑。

对于 100%100\% 的数据,1n50001\le n\le 5000

子任务编号 nn pp 分值
1 50\le 50 / 5
2 500\le 500
3 2000\le 2000 20
4 / $ p_2-p_3
5 p_1-p_3
6 p2=2,p3=3p_2=2,p_3=3p2=3,p3=2p_2=3,p_3=2 10
7 p2=1,p3=4p_2=1,p_3=4p2=4,p3=1p_2=4,p_3=1 20
8 / 10