#816. 学习小组

学习小组

题目描述

班主任计划把班上 nn 名同学分成若干个学习小组(每名同学恰好属于一个小组)。同学按编号 1,2,,n1,2,\dots,n 排列,第 ii 名同学的发言积极度为 cic_i

若一个小组恰好包含编号为 p1,p2,,pkp_1,p_2,\dots,p_kkk 名同学,则该小组的基础讨论积极度为 aka_k,其综合讨论积极度定义为

$$a_k+\max\{c_{p_1},c_{p_2},\ldots,c_{p_k}\}−\min\{c_{p_1},c_{p_2},\ldots,c_{p_k}\}$$

请你将 nn 名同学划分成任意若干组(每组至少 1 人),使得所有小组的综合讨论积极度之和最大化,输出该最大值。

输入格式

  • 第一行包含一个整数 nn1n3001\le n\le 300)。
  • 第二行包含 nn 个非负整数 c1,c2,,cnc_1,c_2,\dots,c_n0ci1040\le c_i\le 10^4)。
  • 第三行包含 nn 个非负整数 a1,a2,,ana_1,a_2,\dots,a_n0ai1040\le a_i\le 10^4)。

输出格式

输出一行,一个整数:可以得到的最大综合讨论积极度之和。

输入样例 1

4
2 1 3 2
1 5 6 3

输出样例 1

12

输入样例 2

8
1 3 2 4 3 5 4 6
0 2 5 6 4 3 3 4

输出样例 2

21

说明

数据范围

  • 对于 40%40\% 的测试数据,保证所有 ci=0c_i=0
  • 对于所有测试数据,满足 1n3001\le n\le 3000ci1040\le c_i\le 10^40ai1040\le a_i\le 10^4