1783: 最大值

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:141 解决:24

题目描述

zzh在玩一个游戏,在游戏里他可以操作角色释放n个技能,每个技能都有对应的属性(一种是冰,一种是火)。

如果当前技能立即跟随另一种不同类型的技能释放,那么其伤害将翻倍(例:一个冰属性技能在一个火属性技能释放之后立即释放,这个冰属性技能造成的伤害将翻倍)。

zzh可以按照任意种顺序释放技能。请你求出zzh所能造成伤害的最大值。

输入

第一行,一个正整数n,技能的数量

第二行,n个整数(0或1,0代表技能是火属性,1代表技能是冰属性),每个技能的属性

第三行,n个整数,每个技能造成的伤害

输出

输出一个数字,zzh所能造成伤害的最大值

样例输入 复制

4
0 1 1 1
1 10 100 1000

样例输出 复制

2112

提示

样例说明:
在测试用例中,我们可以按[3,1,4,2]对技能进行排序,总伤害为100+2×1+2×1000+10=2112。(第三个技能先释放,造成1 * 100点伤害,接着释放第一个技能,触发翻倍造成2 * 1点伤害,接着释放第4个技能,造成2 * 1000点伤害,最后释放第二个技能,造成1 * 10点伤害)
数据范围:

1 <= n <= 1000;

0 <= 每个技能造成的伤害 <= 1e9