AT_nyc2015_9.マージ

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

すぬけ君打算将两个数组 PP 和 QQ 合并成一个新的数组 RR。

合并过程如下:

  • 初始状态下,RR 是一个空数组。
  • 在 PP 或 QQ 至少有一个不为空的情况下,从中选择一个非空的数组(若两个数组都非空,则可以任选其一),然后取出该数组的第一个元素,将其添加到数组 RR 的末尾。

现在给定两个数组 PP 和 QQ,它们都是从 11 到 NN 的排列。请你计算出可以生成多少种不同的 RR 的方式,结果对 1,000,000,0071,000,000,007 取模。

输入格式

输入通过标准输入给出,格式如下:

N
P_1 P_2 ... P_N
Q_1 Q_2 ... Q_N

输出格式

输出一个整数,表示生成的不同数组 RR 的个数,对 1,000,000,0071,000,000,007 取模。

数据范围

  • 1≤N≤20001 \leq N \leq 2000
  • PP 和 QQ 都是从 11 到 NN 的一个排列。

示例

输入

4
3 1 2 4
3 1 2 4

输出

14

输入

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

输出

127224

以上即为题目的详细描述。通过这种合并方式,找出每一种可能的组合排列数,然后输出对 1,000,000,0071,000,000,007 取模的结果。

本翻译由 AI 自动生成

输入解题思路,AI测评打分。不知道怎么写?

首页