题库练习 Genius
← 上一题 下一题 →

A14078 | Genius

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Please note the non-standard memory limit.

There are $n$ problems numbered with integers from $1$ to $n$ . $i$ -th problem has the complexity $c_i = 2^i$ , tag $tag_i$ and score $s_i$ .

After solving the problem $i$ it's allowed to solve problem $j$ if and only if $\text{IQ} < |c_i - c_j|$ and $tag_i \neq tag_j$ . After solving it your $\text{IQ}$ changes and becomes $\text{IQ} = |c_i - c_j|$ and you gain $|s_i - s_j|$ points.

Any problem can be the first. You can solve problems in any order and as many times as you want.

Initially your $\text{IQ} = 0$ . Find the maximum number of points that can be earned.

输入格式

The first line contains a single integer $t$ $(1 \le t \le 100)$ — the number of test cases.

The first line of each test case contains an integer $n$ $(1 \le n \le 5000)$ — the number of problems.

The second line of each test case contains $n$ integers $tag_1, tag_2, \ldots, tag_n$ $(1 \le tag_i \le n)$ — tags of the problems.

The third line of each test case contains $n$ integers $s_1, s_2, \ldots, s_n$ $(1 \le s_i \le 10^9)$ — scores of the problems.

It's guaranteed that sum of $n$ over all test cases does not exceed $5000$ .

输出格式

For each test case print a single integer — the maximum number of points that can be earned.

输入输出样例

输入 #1
5
4
1 2 3 4
5 10 15 20
4
1 2 1 2
5 10 15 20
4
2 2 4 1
2 8 19 1
2
1 1
6 9
1
1
666
输出 #1
35
30
42
0
0
C++ 编辑器
输入
输出