温馨提示:分割线之前描述为情怀内容,对解题无用
。
生命短暂犹若露珠消散/人们在奔波中探寻答案/运数仿佛大海起伏不定/掌上迷离脉纹回路漫漫/长剑在黑夜吟唱悲歌/岁月如斑驳铜镜经年/天际流火叩响大地之门/岁月星辰刻画沧桑年轮/纵横交错兮天下之局/谁能参悟兮世事如棋——张良
恐惧并不是弱点,强者,是要让你的敌人比你更恐惧。——盖聂
只有永远的利害冲突,无尽的生死抉择,这就是纵横。——卫庄
----------分割线----------
君临天下之际,沧海横流之时,桑海城内,暗流涌动。墨家众人与帝国高手狭路相逢,帝国忌惮纵横二人的超强战力,而墨家众人亦有伤在身,双方都不想挑起事端,一时之间桑海城刀光剑影,时现杀机。
调皮的天明偷偷记录了双方的人员,如大叔、二叔、白凤,还有月神、星魂、六剑奴等人,甚至对他们的战力进行了一番评估。现在天明得到了两串评估战力序列,一番奇思妙想,天明想知道如果这两串序列中对应位置的两人交战,会是怎样的场景呢?
天明并不想看所有的交战,他只想看势均力敌(评估战力相等)的对战,同时战力越高之间的对战一定会越精彩,天明想按战力从小到大的顺序“欣赏”对战。
天明才不想给两个序列排序呢!他以当前的战力序列不变,按相对顺序从双方选出战力相同的进行对战,再从交战的两人之后再选战力更高且相等的二人对战。
即:若 Ai==Bj,则 Ai 可与 Bj 交战,之后下一场 Aii、Bjj 交战的条件是:Aii==Bjj、ii>i、jj>j、Aii>Ai、Bjj>Bj 。
请问,调皮的天明最多可以看到多少局对战呢?
输入包含多组数据。
每组数据第一行为两个正整数n、m,代表天明名单上双方的人数(1 ≤ n,m ≤ 10^4)。
接下来一行为n个正整数,代表墨家势力评估战力序列,[1,10^8]范围内。
接下来一行为m个正整数,代表帝国势力评估战力序列,[1,10^8]范围内。
对于每组数据,输出一行,为天明可以看到的最大对战数。
3 3
1 2 3
3 1 2
4 4
1 4 2 5
1 1 2 4
2
2
样例一:战力同为1一场,之后战力同为2一场。答案为2。
样例二:战力同为1一场,之后战力同为2或4一场。答案为2。
注意:内存限制。long long是不可能的,int也是不可能的,AC是不可能的,除非你发现了$n$的范围并不大,dp数组需要使用比int更小的short int
。
另外,本题最优解法时间复杂度为 $O(n^2)$ ,空间复杂度为$O(n)$ 。
仅此纪念AlvinZH的青春——《秦时明月》