第20629题 程序题
安排机位入座顺序使能力值总和最大

又到周末了,同学们陆陆续续来到机房上机。jbr到的有点晚,发现有些机位已有人,有些空着。细心的jbr发现:

  • 一位同学坐在机位i上,若坐下时左右都空,获得能力值a[i];
  • 若坐下时左右恰好1个有人,获得能力值b[i];
  • 若坐下时左右都有人,获得能力值c[i];
  • 已经上机的同学能力值不会变化;
  • 第一个机位无左邻、最后一个机位无右邻,无论何时坐下无法获得c值

现有一排N个空机位(编号1~N)、N位同学,需安排同学们的入座位置顺序,使总能力值最大。

输入

第一行:整数N(1≤N≤10000) 第二行:N个整数a[1],a[2],...,a[N] 第三行:N个整数b[1],b[2],...,b[N] 第四行:N个整数c[1],c[2],...,c[N] (1≤a[i],b[i],c[i]≤10000)

输出

一个整数,表示最大的能力值总和

样例输入

4
1 2 2 4
4 3 3 1
2 1 1 2

样例输出

14

提示

最优顺序:4→3→2→1,能力值分别为a[4]=4、b[3]=3、b[2]=3、b[1]=4,总和14。

编辑模式